Lambda@Edge for "origin request" doesn't receive custom headers

0

I have a CloudFront distribution with S3 origins. In the origin settings there are custom headers added (i.e. "x-test"). The behaviour has two Lambdas: for "origin request" and "origin response" hooks (both NodeJS). It is all completely fine with the one for "origin response" hook, but the one for "origin request" doesn't receive "x-test" header in the event...headers object. All the docs and articles I've read say that "origin request" Lambda should get this header too. Tried to add "x-test" header to whitelist in attached "origin request policy" - this didn't help. Cannot find ANY information why could this happen. Does anyone have any ideas?

  • Can you share from which object are you trying to read the custom header from?

  • Sure. event.Records[0].cf.request.headers The same works perfectly for the function for "origin response"

Corwin
feita há um ano911 visualizações
1 Resposta
0
Resposta aceita

I have finally found them. For "origin request" hook they are here: event.Records[0].cf.request.origin.s3.customHeaders and if origin is ALB: event.Records[0].cf.request.origin.custom.customHeaders

Corwin
respondido há um ano

Você não está conectado. Fazer login para postar uma resposta.

Uma boa resposta responde claramente à pergunta, dá feedback construtivo e incentiva o crescimento profissional de quem perguntou.

Diretrizes para responder a perguntas