Handy utilities for aiohttp.web applications.
Project description
aiohttp_utils provides handy utilities for building aiohttp.web applications.
Method-based handlers (“resources”)
Content negotiation with JSON rendering by default
Local development server with auto-reloading
And more
Everything is optional. You can use as much (or as little) of this toolkit as you need.
from aiohttp import web
from aiohttp_utils import Response, routing, negotiation, run
app = web.Application(router=routing.ResourceRouter())
# Method-based handlers
class HelloResource:
async def get(self, request):
name = request.GET.get('name', 'World')
return Response({
'message': 'Hello ' + name
})
app.router.add_resource_object('/', HelloResource())
# Content negotiation
negotiation.setup(
app, renderers={
'application/json': negotiation.render_json
}
)
if __name__ == '__main__':
# Development server
run(
app,
app_uri='hello.app:app',
reload=True,
port=8000
)
Install
$ pip install aiohttp_utils
Documentation
Full documentation is available at https://aiohttp-utils.readthedocs.org/.
Project Links
License
MIT licensed. See the bundled LICENSE file for more details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aiohttp_utils-2.0.0.tar.gz
(19.7 kB
view hashes)
Built Distribution
Close
Hashes for aiohttp_utils-2.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3aada28d32436d38a320f587fbb775b43b830ae187dcffd73e35eec5fcc061c1 |
|
MD5 | 8965a6aafd0d361042e50f41853505d1 |
|
BLAKE2b-256 | c001fbfdd0713a0f6bd5bca2614296519bbdb92ae1f66ac88b9beed7cd9d565d |