Я использую следующий код для установки заголовков сеанса в ответ в Lambda Edge. Но я всегда получаю эту ошибку.
{
"errorType": "TypeError",
"errorMessage": "Cannot read property 'headers' of undefined",
"stack": [
"TypeError: Cannot read property 'headers' of undefined",
" at Runtime.exports.handler (/var/task/index.js:118:30)",
" at Runtime.handleOnce (/var/runtime/Runtime.js:66:25)"
]
}
Код, который я использую, это
exports.handler = function (event, config, callback) {
const request = event.Records[0].cf.request;
console.log(event.Records[0].cf);
const response = event.Records[0].cf.response;
const headers = response.headers;
getConfigCached(request, function (err, config) {
if (err) {
callback(err, null);
}
else if (request.uri !== "/code" && !redirectIfNotAuthenticated(config, request, callback)) {
callback(null, request);
}
else if (request.uri == "/code") {
console.log('INSIDE CODE');
let access_token = accessTokenCallback(request, callback);
console.log(access_token);
headers['session-token'] = [{ key: 'Session-Token', value: access_token }];
callback(null, response);
}
});
};
Триггер CloudFront настроен на запрос зрителя
event.Records[0].cf.response
этоundefined
. Какой вопрос? - person 404   schedule 03.05.2021