API HTTP Gateway path rewrite question

0

Hi, I have API HTTP Gateway with ALB backends and I'm trying to migrate from

API Gateway -> internet-faced ALB (using HTTP URI integration) to API Gateway -> VPC link -> internal ALB.

My routes look like "/app1/{proxy+}". and in the first case, I used "https://app1.example.com/{proxy}", which rewrites "api.example.com/v1/app1/user/add" to "https://app1.example.com/user/add". Now I'd like to do the same rewrite with VPC link integration and I couldn't find a way to do that. Rewriting the path with "$request.path" giving me "/app1/user/add", and "$request.path.proxy+" giving me "/v1/app1/user/add".

gefragt vor 2 Jahren461 Aufrufe
1 Antwort
1
Akzeptierte Antwort

Hello,

Thank you for reaching out to us and sharing the detailed use-case.

The correct mapping parameter to overwrite the path would be as below :

/$request.path.proxy

Using "$request.path.proxy+" will give you "/v1/app1/user/add" as path as it is a catch all greedy path variable. This can be verified using context variable $context.path in access logging.

The correct way is using "$request.path.proxy" [1] which will give you the value "user/add" as path for the integration which is partially correct as it will throw 4xx error at the backend due to the missing initial "/".

Therefore, using "/$request.path.proxy+" will give you the proper value "/user/add" as path output which is suits your use-case. Please let me know if you still face any issues after implementing my above suggestion.

References: [1] https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-http.html

AWS
SUPPORT-TECHNIKER
beantwortet vor 2 Jahren
profile picture
EXPERTE
überprüft vor einem Monat
  • Many thanks! BTW, I think there is a typo: 'Therefore, using "/$request.path.proxy+" will give you the proper value "/user/add"' should be 'proxy', not 'proxy+'.

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen