Я пытаюсь удалить некоторые заголовки из ответа Cloudfront, используя Lambda @ Edge для события ViewerResponse.Источник - S3-контейнер.
Мне удалось изменить заголовок следующим образом:
exports.handler = (event, context, callback) => {
const response = event.Records[0].cf.response;
response.headers.server = [{'key': 'server', 'value': 'bunny'}];
callback(null, response);
};
Однако кажется, что он не удаляет все заголовки вместе, например, вот так.
exports.handler = (event, context, callback) => {
const response = event.Records[0].cf.response;
delete response.headers.server;
// or response.header.server = null;
// or response.headers.server = [{'key': 'server', 'value': null}];
callback(null, response);
};
Этот фрагмент не удаляет, а меняет заголовок сервера с server: AmazonS3
на server: CloudFront
.Поэтому я предположил, что, возможно, заголовок сервера является обязательным и заполняется автоматически.Но я также не смог удалить другие заголовки, сгенерированные CloudFront.В области лямбда-теста функция работает, как и ожидалось.Итак, что-то происходит после завершения функции Lambda.
В качестве фона я хотел бы изменить заголовки, потому что сайт блокируется в сети важного клиента с сообщением, что это было онлайн-хранилище или резервное копирование.место нахождения.
Чего мне не хватает?