CloudFront Functions で特定の Cookie の値を HTTP ヘッダーに付け替えるコード。備忘録。
function handler(event) { var request = event.request; if (request.cookies['foo'] && request.cookies['foo'].value) { request.headers['foo'] = {value: request.cookies['foo'].value}; } return request; }
ちなみに、request.headers
のキーに大文字が含まれているとエラー。すべて小文字である必要がある。
The CloudFront function returned an invalid value: request.headers must have header names in lower case.
あと、「変更を保存」をしただけでは反映されないので「関数の発行」を忘れなく。
現場からは以上です。