-
Notifications
You must be signed in to change notification settings - Fork 604
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
Initial requests with custom method (including PATCH) fail with HTTP/2 #6756
Comments
Thanks for reporting this @MikeEdgar - I've spent a few minutes looking over this scenario, as reproducing it is simple. Despite what you've seen when accessing the server welcome page, Liberty doesn't actually currently support
It's not clear to me yet if the welcome page should be returned in the |
@wtlucy - thanks for following up. I was looking for the simplest way to reproduce the issue using the prepackaged Docker image and just stumbled on using the welcome page. My case involves using JAX-RS 2.1 where |
@wtlucy, I've done a bit of research into the A couple things -
|
Hi @MikeEdgar , I think you are on the right track on 2. above. The code is in the middle of deciding if it's H2 or not, and is falling through to the HTTP 1.1 section in this case. I'm looking into it in more detail. |
I've found the issue that caused the HTTP/2 Protocol error and I will use this issue to track the fix. |
Now looking at the inconsistent behavior between HTTP/1.1 and HTTP/2 with a PATCH request and the Liberty landing page. |
I opened a new issue for the behavior difference between HTTP/1.1 and HTTP/2 with PATCH. |
HTTP requests using less common methods (including PATCH) fail when using HTTP/2. Requesting with HTTP 1.1 then repeating the request with HTTP/2 resolves the issue.
Setup a basic server:
docker run --rm -d -p 80:9080 -p 443:9443 open-liberty
Request using HTTP/2 (may be repeated):
curl -s -k -X PATCH https://localhost/ -v --http2
Results in error:
HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1)
Request using HTTP 1.1 returns server welcome page as expected:
curl -s -k -X PATCH https://localhost/ -v --http1.1
Repeat request using HTTP/2 returns server welcome page as expected.
The text was updated successfully, but these errors were encountered: