Simple library that helps you validate your API endpoints requests/responses with json schema
Project description
aiohttp_validate
Simple library that helps you validate your API endpoints requests/responses with jsonschema. Documentation is also available here at https://aiohttp-validate.readthedocs.io.
Installation
Install from PyPI:
pip install aiohttp_validate
Usage
Complete example of validation for text tokenization microservice:
from aiohttp_validate import validate @validate( request_schema={ "type": "object", "properties": { "text": {"type": "string"}, }, "required": ["text"], "additionalProperties": False }, response_schema={ "type": "array", "items": { "type": "array", "items": { "type": "array", "items": {"type": "string"} } } } ) async def tokenize_text_handler(request, *args): return tokenize_text(request["text"])
Features
The decorator to (optionally) validate the request to your aiohttp endpoint and it’s response.
Easily integrates with aiohttp_swaggerify to automatically document your endpoints with swagger.
Validation errors are standardized and can be easily parsed by the clients of your service and also human-readable.
Developing
Install requirement and launch tests:
pip install -r requirements-dev.txt py.test
Credits
That package is influenced by Tornado-JSON written by Hamza Faran Code to parse errors is written by Ruslan Karalkin
License
Free software: MIT license
History
1.0.0 (2016-12-12)
Better documentation.
Updated requirements.
Out of alpha!
0.1.0 (2016-10-12)
First release on PyPI.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.