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

[gateway] Accept backends/entrypoints supporting only HTTP/2 #3105

Comments

@abatista75
Copy link

If the backend only accepts HTTP/2, the connection fails with the error:

Unknown ALPN Protocol, expected `h2` to be available.
If this is a HTTP request: The server was not configured with the `allowHTTP1` option or a listener for the `unknownProtocol` event.

Expected Behavior

Gravitee should be able to connect to a backend using HTTP/1.1 or HTTP/2.

Current Behavior

If the backend only supports HTTP/2, then the API call fails.

Possible Solution

Either offer an option at the entrypoint-level to define the preferred HTTP version it both are supported by the backend, or apply an default rule (i.e. HTTP/2 with failover on HTTP/1.1)

Steps to Reproduce (for bugs)

  1. Enable only HTTP/2 on the backend server
  2. Call an API

Your Environment

  • Version used: 1.30.1
  • Browser Name and version: curl 7.58
  • Operating System and version: Ubuntu 18.04
@abatista75 abatista75 changed the title Enable HTTP/2 at the entrypoint-level Accept backends/entrypoints supporting only HTTP/2 Jan 17, 2020
@brasseld
Copy link
Member

Hi @adubreuiltk

HTTP/2 (and gRPC) support will be provided in 3.0

@abatista75
Copy link
Author

Thanks!!!

@brasseld brasseld modified the milestones: APIM - 3.0.0, APIM - 3.1.0 Apr 8, 2020
@brasseld brasseld changed the title Accept backends/entrypoints supporting only HTTP/2 [gateway] Accept backends/entrypoints supporting only HTTP/2 Jun 23, 2020
brasseld added a commit to gravitee-io/gravitee-definition that referenced this issue Jun 29, 2020
brasseld added a commit to gravitee-io/gravitee-common that referenced this issue Jun 29, 2020
brasseld added a commit to gravitee-io/gravitee-management-rest-api that referenced this issue Jun 29, 2020
brasseld added a commit to gravitee-io/gravitee-management-webui that referenced this issue Jun 29, 2020
brasseld added a commit to gravitee-io/gravitee-gateway-api that referenced this issue Jun 29, 2020
brasseld added a commit to gravitee-io/gravitee-common that referenced this issue Jul 1, 2020
brasseld added a commit to gravitee-io/gravitee-definition that referenced this issue Jul 2, 2020
brasseld added a commit to gravitee-io/gravitee-management-webui that referenced this issue Jul 2, 2020
aelamrani pushed a commit to gravitee-io/gravitee-api-management that referenced this issue Jul 3, 2020
aelamrani pushed a commit to gravitee-io/gravitee-api-management that referenced this issue Jul 3, 2020
aelamrani pushed a commit to gravitee-io/gravitee-gateway-api that referenced this issue Jul 3, 2020
aelamrani pushed a commit to gravitee-io/gravitee-management-webui that referenced this issue Jul 3, 2020
aelamrani pushed a commit to gravitee-io/gravitee-management-rest-api that referenced this issue Jul 3, 2020
aelamrani pushed a commit to gravitee-io/gravitee-common that referenced this issue Jul 3, 2020
aelamrani pushed a commit to gravitee-io/gravitee-definition that referenced this issue Jul 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment