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

Create Proxy Connectors #3851

Open
2 tasks
seanmonstar opened this issue Mar 3, 2025 · 2 comments
Open
2 tasks

Create Proxy Connectors #3851

seanmonstar opened this issue Mar 3, 2025 · 2 comments
Labels
A-client Area: client. C-feature Category: feature. This is adding a new feature. E-easy Effort: easy. A task that would be a great starting point for a new contributor. K-hyper-util Crate: hyper-util

Comments

@seanmonstar
Copy link
Member

Add types to hyper_util::client::proxy that impl Service, wrapping another connector, and providing HTTP proxying.

There's different required behavior depending on the type of proxy, and by having each one separate, people can by then combine them with something like tower::Either.

  • Create a Tunnel proxy service which does HTTP CONNECT tunneling.
  • Create a Socks proxy service.
@seanmonstar seanmonstar added A-client Area: client. C-feature Category: feature. This is adding a new feature. E-easy Effort: easy. A task that would be a great starting point for a new contributor. K-hyper-util Crate: hyper-util labels Mar 3, 2025
@JPDye
Copy link

JPDye commented Mar 5, 2025

I could take this on. Seems pretty simple.

@seanmonstar
Copy link
Member Author

@JPDye awesome! If you want to break it into pieces, that's great too. And you're welcome to look at hyperium/hyper-util#140 as a start, or try it differently.

The final goal is that we could replace the internals in reqwest with these util types.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-client Area: client. C-feature Category: feature. This is adding a new feature. E-easy Effort: easy. A task that would be a great starting point for a new contributor. K-hyper-util Crate: hyper-util
Projects
None yet
Development

No branches or pull requests

2 participants