Comments (13)
Can you provide a minimal reproducer that demonstrates the issue?
Here is the server side of the minimal reproducer: https://github.com/CosmicDNA/pynacl-middleware-canonical-example. I will start preparing a client minimal reproducer and instructions.
I was expecting a single file, probably without any classes. i.e. something comparable to our quickstart example with a middleware added: https://docs.aiohttp.org/en/stable/#server-example
I would like to forward a cloned request to the handler with the content changed to be the decrypted message which is json (either a string or object). I am not sure which is the correct way to accomplish this using aiohttp though...
Without knowing about the details, I'd suggest the middleware could store the decrypted message on the request object (i.e. request["decrypted"] = decrypted_message
) and then the handler can use that.
from aiohttp.
Looks like a good example, yes. Seems you've created a library for this now, so feel free to create a PR to add it to the list of third-party libraries in our docs (if you haven't already).
from aiohttp.
We don't debug third party software, sorry. Take it up with whoever provides you with that library.
from aiohttp.
The report makes it sound like token_auth_middleware
is something in aiohttp, but it's not. So, I suspect the issue is reported in the wrong project.
from aiohttp.
I opened a feature request, I proposed one reference implementation for the feature as well. It is request to evaluate implementing this feature in aio_http.
from aiohttp.
It's rather unclear what the request is. You start by describing a problem with some middleware we know nothing about and then just link to some code as the suggested solution.
Please describe the actual feature you want. I don't think we generally have any middlewares included in aiohttp itself, so if the proposal is for a pre-built middleware, I think probably this is not the right place for it.
from aiohttp.
It's rather unclear what the request is. You start by describing a problem with some middleware we know nothing about and then just link to some code as the suggested solution.
Please describe the actual feature you want. I don't think we generally have any middlewares included in aiohttp itself, so if the proposal is for a pre-built middleware, I think probably this is not the right place for it.
The feature is a middleware that works for both websocket and http requests. The middleware is responsible to pick the encrypted message and sender's public key from query parameters, and upon successful decoding to forward the request to the handier regardless if that was a websocket or http request.
from aiohttp.
The feature is a middleware that works for both websocket and http requests.
You mean that you want changes to aiohttp to allow a middleware to work for both websocket/http requests? What currently stops this from working and what changes would be needed?
from aiohttp.
Can you provide a minimal reproducer that demonstrates the issue?
from aiohttp.
The feature is a middleware that works for both websocket and http requests.
You mean that you want changes to aiohttp to allow a middleware to work for both websocket/http requests? What currently stops this from working and what changes would be needed?
I believe there is not need to change aiohttp as the middleware is currently working as is. But in addition to what the middleware does, I would like to forward a cloned request to the handler with the content changed to be the decrypted message which is json (either a string or object). I am not sure which is the correct way to accomplish this using aiohttp though...
from aiohttp.
Can you provide a minimal reproducer that demonstrates the issue?
Sure, let me prepare this.
from aiohttp.
Can you provide a minimal reproducer that demonstrates the issue?
Here is the server side of the minimal reproducer: https://github.com/CosmicDNA/pynacl-middleware-canonical-example. I will start preparing a client minimal reproducer and instructions.
from aiohttp.
I was expecting a single file, probably without any classes. i.e. something comparable to our quickstart example with a middleware added: https://docs.aiohttp.org/en/stable/#server-example
@Dreamsorcerer, I have provided a single file implementation for the server and for the client. Was it along these lines that you were expecting?
from aiohttp.
Related Issues (20)
- ASGI support HOT 4
- tests/test_pytest_plugin.py::test_aiohttp_plugin fails on Alpine Linux (python 3.11 and python 3.12) HOT 12
- ERROR: aiohttp has an invalid wheel, .dist-info directory 'yarl-1.9.4.dist-info' does not start with 'aiohttp' HOT 2
- Pass max_length parameter to ZLibDecompressor HOT 5
- "Unclosed client session" when initialization fails HOT 2
- Expired cookies not listed in the response cookies HOT 2
- Reserve generic property on app to store app state in a typed fashion HOT 1
- Please update llhttp to 9.2.1 HOT 7
- Using MultipartWriter.append_json breaks in 3.9.4 with AssertionError "assert CONTENT_DISPOSITION in payload.headers" HOT 8
- Exception occurred while requesting https URL using proxy aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host HOT 3
- Documentation mentions async_timeout as dependency HOT 2
- TimeoutError instead of 403 "Forbidden" in case of not corresponding content length HOT 3
- CONTRIB: easily-integrated minimal http server example HOT 1
- aiohttp ^C hangs when psycopg connection pool created HOT 1
- llhttp should be a separate, optional package HOT 2
- Error message not always propagated on 3.9.4 HOT 2
- ValueError: I/O operation on closed file on WSL HOT 2
- Security improvement: raise_for_status + ClientError prevent tokens from leaking HOT 5
- Broken HTTP request parsing: Upgrade: h2c header leads to discarded body HOT 7
- aiohttp does not support concurrent requests exceeding 500.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aiohttp.