I have HTTP server on aiohttp
with python-3.6. How can I return web.Response()
through JSON (from a dict
)?
async def api_server(request):
res = {"q": "qqq", "a": "aaa"}
return web.Response(res) # <-- as JSON
You can use web.json_response
:
async def api_server(request):
res = {"q": "qqq", "a": "aaa"}
return web.json_response(res)
Furthermore the json_response
has additional parameters, like:
json_response(data, text=None, body=None, status=200, reason=None, headers=None, content_type='application/json', dumps=json.dumps)
Most of the parameters are the same as the generic web.Response(..)
, but the dumps
is more interesting: it is a reference to a method that converts data into its JSON equivalent. By default it uses json.dumps
. If you however plan to write complex objects to the client, you perhaps should alter that. For now it is fine however.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With