Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable Chunk Encoding by Config #202

Open
janbraunsdorff opened this issue Apr 12, 2024 · 4 comments
Open

Disable Chunk Encoding by Config #202

janbraunsdorff opened this issue Apr 12, 2024 · 4 comments
Labels
enhancement New feature or request

Comments

@janbraunsdorff
Copy link

What is the problem your feature solves, or the need it fulfills?

Bevor Upstream the content gets parse base on the corrosponding headers. Some Clients still use http1 with Chunk encoding. Is there a way to disabel Chunk encoding parsing for all requests from Downstream?

Describe the solution you'd like

A server Config to default disabele Chunk Encoding in the yaml file.

Describe alternatives you've considered

Solve the issue client Side or use an nginx befor the proxy.

Additional context

AWS S3 clients and pyspark still uses Chunk Enconding on http1. During access throw the proxy, the request will fail because the md5-hash is incorrect. Therefore is there way to pass the payload throw without converting it?

Or am I completly wrong and miss something?

@gideontong gideontong added the enhancement New feature or request label Apr 18, 2024
@eaufavor
Copy link
Member

Do you mean that you want a feature to preserve the exact request chunked encoding through our proxy?
Or do you what a feature to convert chunked encoding to something else (content-length)?

@janbraunsdorff
Copy link
Author

I want to have a feature to pass throw the chunked encoding.

client --> Proxy --> Server. The Server needs the exact encoding from the client. No buffering or Parsing. So the proxy only reads the header, do something (e.g. Routing and Auth) an pass throw the body without parsing oder try to read all chunks

@janbraunsdorff
Copy link
Author

Hi everyone

for more infromation, i try to build an Gateway for Authentification for an S3 Storage. Older Clients want to use chunked Encoding. And the Chunks will be reassembled by S3. So I need an option to pass throw the raw payload. Is this possible?

Thank you :)

@eaufavor
Copy link
Member

eaufavor commented May 1, 2024

It is possible for us to implement something that doesn't combine chunks internally in order to preserve. Because this is a relatively niche ask, it has not been worked on yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants