|
35 | 35 | # POST a request to create a token to K2HR3 Token API. |
36 | 36 | myhttp = K2hr3Http("http://127.0.0.1:18080") |
37 | 37 | myhttp.POST(mytoken.create()) |
38 | | - mytoken.token // gAAAAA... |
| 38 | + mytoken.token # gAAAAA... |
39 | 39 |
|
40 | 40 | # POST a request to create a K2HDKC resource. |
41 | 41 | myresource = K2hr3Resource(mytoken.token) |
|
51 | 51 | "chmpx-slave-ctrlport": "8031"}, |
52 | 52 | alias=[]) |
53 | 53 | ) |
54 | | - myresource.resp.body // {"result":true... |
| 54 | + myresource.resp.body # {"result":true... |
55 | 55 |
|
56 | 56 | """ |
57 | 57 |
|
@@ -350,6 +350,15 @@ def resource_path(self, val): # type: ignore # noqa: F811 |
350 | 350 | if getattr(self, '_resource_path', None) is None: |
351 | 351 | self._resource_path = val |
352 | 352 |
|
| 353 | + @staticmethod |
| 354 | + def json_dumps(params): |
| 355 | + """Return the json params after deleting None data.""" |
| 356 | + for k in list(params.keys()): |
| 357 | + if params[k] is None: |
| 358 | + del params[k] |
| 359 | + json_params = json.dumps(params) |
| 360 | + return json_params |
| 361 | + |
353 | 362 | # |
354 | 363 | # abstract methos that must be implemented in subclasses |
355 | 364 | # |
@@ -380,29 +389,32 @@ def _api_path(self, method: K2hr3HTTPMethod) -> Optional[str]: # pylint: disable |
380 | 389 | return f'{self.version}/{self.basepath}' |
381 | 390 | return f'{self.version}/{self.basepath}/{self.resource_path}' |
382 | 391 | if method == K2hr3HTTPMethod.GET: |
| 392 | + # NOTE(hiwkby): service should not be passed if it is None. |
383 | 393 | if self.api_id == 3: |
384 | | - self.urlparams = json.dumps({ |
| 394 | + self.urlparams = K2hr3Resource.json_dumps({ |
385 | 395 | 'expand': self.expand, |
386 | 396 | 'service': self.service |
387 | 397 | }) |
388 | 398 | return f'{self.version}/{self.basepath}/{self.resource_path}' |
389 | 399 | if self.api_id == 4: |
390 | | - self.urlparams = json.dumps({ |
| 400 | + self.urlparams = K2hr3Resource.json_dumps({ |
391 | 401 | 'type': self.data_type, |
392 | 402 | 'keys': self.keys, |
393 | 403 | 'service': self.service |
394 | 404 | }) |
395 | 405 | return f'{self.version}/{self.basepath}/{self.resource_path}' |
396 | 406 | if method == K2hr3HTTPMethod.HEAD: |
| 407 | + # NOTE(hiwkby): service should not be passed if it is None. |
397 | 408 | if self.api_id == 5: |
398 | | - self.urlparams = json.dumps({ |
| 409 | + self.urlparams = K2hr3Resource.json_dumps({ |
399 | 410 | 'type': self.data_type, |
400 | 411 | 'keys': self.keys, |
401 | 412 | 'service': self.service |
402 | 413 | }) |
403 | 414 | return f'{self.version}/{self.basepath}/{self.resource_path}' |
| 415 | + # NOTE(hiwkby): service should not be passed if it is None. |
404 | 416 | if self.api_id == 6: |
405 | | - self.urlparams = json.dumps({ |
| 417 | + self.urlparams = K2hr3Resource.json_dumps({ |
406 | 418 | 'port': self.port, |
407 | 419 | 'cuk': self.cuk, |
408 | 420 | 'role': self.role, |
|
0 commit comments