This library is a basic HTTP client for NON-REST api with exception formatting.
First, install cdumay-rest-client using pip:
$ pip install cdumay-http-client
Next, add a HttpClient instance to your code:
from cdumay_http_client.client import HttpClient
client = HttpClient(server="http://warp.myhost.com/api/v0")
print(client.do_request(method="POST", path="/exec", data=[...]))
You can use marshmallow to serialize exceptions:
import json, sys
from cdumay_http_client.client import HttpClient
from cdumay_http_client.exceptions import HTTPException, HTTPExceptionValidator
try:
client = HttpClient(server="http://warp.myhost.com/api/v0")
data = client.do_request(method="GET", path="/me")
except HTTPException as exc:
data = HTTPExceptionValidator().dump(exc).data
json.dump(data, sys.stdout, sort_keys=True, indent=4, separators=(',', ': '))
Result:
{
"code": 404,
"extra": {},
"message": "Not Found"
}
Licensed under BSD 3-Clause License or https://opensource.org/licenses/BSD-3-Clause.