Replies: 2 comments 5 replies
-
Note that if I don't set
|
Beta Was this translation helpful? Give feedback.
0 replies
-
Okay I see this comment for
So the question is just how to make this happen. Like I mentioned earlier, I thought https://docs.rs/hyper-tls/latest/hyper_tls with the alpn feature enabled would handle this. |
Beta Was this translation helpful? Give feedback.
5 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Some prior context, but I'll describe the situation fully here: #3956.
I'm building a proxy using Hyper. We run it in GCP Cloud Run.
I'm building my client like this, so we only support HTTP/2 requests:
I run a HTTP/2-only server like this:
I then configure my proxy like this:
We can confirm that https://myapi.com supports HTTP/2 requests:
Now I run my proxy.
I send a request to my proxy to hit endpoint1 locally like this:
Perfect, this is working great. Now let's hit endpoint2:
Ruh roh. This is what we see from the proxy (abridged, full logs here):
My suspicion is that the upstream can handle HTTP/2, but it can't handle HTTP/2 cleartext. I would've maybe naively hoped that when I send the request off with Hyper, it magically wraps it back up into a normal HTTP/2 request. Is there a way to get this to work, assuming my diagnosis of the issue is correct?
Another possible issue is the upstream only supports HTTP/2 after first upgrading to it from HTTP/1.1. I was hoping enabling
alpn
onhyper-tls
would help me with that though.In short if I receive a HTTP/2 request (h2c or not) I want to be able to proxy it to a https upstream that supports HTTP/2 (though perhaps only via an upgrade, I'm not exactly sure).
My relevant dependencies:
Beta Was this translation helpful? Give feedback.
All reactions