1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
Werkzeug
========
This section describes integration with `Werkzeug <https://werkzeug.palletsprojects.com>`__ a WSGI web application library.
Low level
---------
The integration defines classes useful for low level integration.
Request
^^^^^^^
Use ``WerkzeugOpenAPIRequest`` to create OpenAPI request from Werkzeug request:
.. code-block:: python
from openapi_core.contrib.werkzeug import WerkzeugOpenAPIRequest
def application(environ, start_response):
request = Request(environ)
openapi_request = WerkzeugOpenAPIRequest(request)
openapi.validate_request(openapi_request)
response = Response("Hello world", mimetype='text/plain')
return response(environ, start_response)
Response
^^^^^^^^
Use ``WerkzeugOpenAPIResponse`` to create OpenAPI response from Werkzeug response:
.. code-block:: python
from openapi_core.contrib.werkzeug import WerkzeugOpenAPIResponse
def application(environ, start_response):
request = Request(environ)
response = Response("Hello world", mimetype='text/plain')
openapi_request = WerkzeugOpenAPIRequest(request)
openapi_response = WerkzeugOpenAPIResponse(response)
openapi.validate_response(openapi_request, openapi_response)
return response(environ, start_response)
|