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

[Choreo-Connect-1.2.0] Headers sent by the backend converted to lowercase when going through Choreo-connect #3621

Open
DaniduWijendra opened this issue Nov 22, 2024 · 0 comments

Comments

@DaniduWijendra
Copy link

Problem

When sending a header including capital letters (Ex: Abc) the header sent from the backend is converted to lowercase (abc) when passing through Choreo-connect. We identified that this is happening to all the headers. All the headers going through the Choreo-connect will be converted to the lowercase.

Reproducing Steps

  • Created a mock backend to pass a header such as "Abc".
  • Deploy Choreo-connect-1.2.0 with API Manager-4.2.0 by following this documentation.[1]
  • Deploy a sample API with this endpoint as the backend.
  • Invoke the backend directly and via Choreo-connect.

[1] https://apim.docs.wso2.com/en/4.2.0/deploy-and-publish/deploy-on-gateway/choreo-connect/getting-started/quick-start-guide-docker-with-apim/

Solution

It seems this issue is the default behavior of the Chore-connect because the router uses the envoy-proxy as the core component.[1] As per this[2] documentation, by default envoy-proxy converts the headers to lowercase. However, as per the envoy-proxy documentation, we could configure the proxy to not convert all the headers as well.

[1] https://apim.docs.wso2.com/en/4.2.0/deploy-and-publish/deploy-on-gateway/choreo-connect/getting-started/choreo-connect-overview/#router

[2] - https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/header_casing

Implementation

No response

Related Issues

No response

Suggested Labels

1.2.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant