Skip to content

ox-it/aiohttp_utils

 
 

Repository files navigation

aiohttp_utils

Latest version

Travis-CI

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('/', 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/.

License

MIT licensed. See the bundled LICENSE file for more details.

About

Handy utilities for building aiohttp.web applications

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%