You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When a parameter in the request URL contains a new line character encoded as %0A in the URL, connexion framework issues an erro 500.
Ex: POST http://127.0.0.1:8000/greeting/e%0Aric
Expected behaviour
The URL parameter should be parsed.
Actual behaviour
Error in getting the URL parser.
RuntimeError("Working outside of operation context. Make sure your app is wrapped in a ContextMiddleware and you're processing a request while accessing the context.")
Traceback (most recent call last):
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/swagger_ui.py", line 222, in call
await self.router(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 756, in call
await self.middleware_stack(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 806, in app
await self.default(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/swagger_ui.py", line 235, in default_fn
await self.app(original_scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/routing.py", line 154, in call
await self.router(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 756, in call
await self.middleware_stack(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 806, in app
await self.default(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/routing.py", line 48, in call
await self.next_app(original_scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/lifespan.py", line 26, in call
await self.next_app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/apps/flask.py", line 151, in call
return await self.asgi_app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/a2wsgi/wsgi.py", line 165, in call
return await responder(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/a2wsgi/wsgi.py", line 200, in call
await self.loop.run_in_executor(
File "/opt/conda/envs/historian/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/a2wsgi/wsgi.py", line 256, in wsgi
iterable = self.app(environ, start_response)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 1476, in wsgi_app
response = self.handle_exception(e)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 1473, in wsgi_app
response = self.full_dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 882, in full_dispatch_request
rv = self.handle_user_exception(e)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 880, in full_dispatch_request
rv = self.dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 865, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/apps/flask.py", line 68, in call
return self.fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/decorators/main.py", line 132, in wrapper
request = self.framework.get_request(uri_parser=self.uri_parser)
^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/decorators/main.py", line 72, in uri_parser
uri_parser_class = self.uri_parser_class or operation.uri_parser_class
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/werkzeug/local.py", line 318, in get
obj = instance._get_current_object()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/werkzeug/local.py", line 519, in _get_current_object
raise RuntimeError(unbound_message) from None
RuntimeError: Working outside of operation context. Make sure your app is wrapped in a ContextMiddleware and you're processing a request while accessing the context.
INFO: 127.0.0.1:56016 - "POST /greeting/e%0Aric HTTP/1.1" 500 Internal Server Error
Description
When a parameter in the request URL contains a new line character encoded as %0A in the URL, connexion framework issues an erro 500.
Ex: POST http://127.0.0.1:8000/greeting/e%0Aric
Expected behaviour
The URL parameter should be parsed.
Actual behaviour
Error in getting the URL parser.
RuntimeError("Working outside of operation context. Make sure your app is wrapped in a ContextMiddleware and you're processing a request while accessing the context.")
Traceback (most recent call last):
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/swagger_ui.py", line 222, in call
await self.router(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 756, in call
await self.middleware_stack(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 806, in app
await self.default(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/swagger_ui.py", line 235, in default_fn
await self.app(original_scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/routing.py", line 154, in call
await self.router(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 756, in call
await self.middleware_stack(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/starlette/routing.py", line 806, in app
await self.default(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/routing.py", line 48, in call
await self.next_app(original_scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/lifespan.py", line 26, in call
await self.next_app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/middleware/abstract.py", line 261, in call
await self.app(scope, receive, send)
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/apps/flask.py", line 151, in call
return await self.asgi_app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/a2wsgi/wsgi.py", line 165, in call
return await responder(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/a2wsgi/wsgi.py", line 200, in call
await self.loop.run_in_executor(
File "/opt/conda/envs/historian/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/a2wsgi/wsgi.py", line 256, in wsgi
iterable = self.app(environ, start_response)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 1476, in wsgi_app
response = self.handle_exception(e)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 1473, in wsgi_app
response = self.full_dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 882, in full_dispatch_request
rv = self.handle_user_exception(e)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 880, in full_dispatch_request
rv = self.dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/flask/app.py", line 865, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/apps/flask.py", line 68, in call
return self.fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/decorators/main.py", line 132, in wrapper
request = self.framework.get_request(uri_parser=self.uri_parser)
^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/connexion/decorators/main.py", line 72, in uri_parser
uri_parser_class = self.uri_parser_class or operation.uri_parser_class
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/werkzeug/local.py", line 318, in get
obj = instance._get_current_object()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/historian/lib/python3.12/site-packages/werkzeug/local.py", line 519, in _get_current_object
raise RuntimeError(unbound_message) from None
RuntimeError: Working outside of operation context. Make sure your app is wrapped in a ContextMiddleware and you're processing a request while accessing the context.
INFO: 127.0.0.1:56016 - "POST /greeting/e%0Aric HTTP/1.1" 500 Internal Server Error
Steps to reproduce
Simply run the quick start app of the documentation (https://connexion.readthedocs.io/en/latest/quickstart.html)
and post /greeting/e%0Aric
Additional info:
Output of the commands:
python --version
pip show connexion | grep "^Version\:"
The text was updated successfully, but these errors were encountered: