Как поразить происхождение облачного фронта от lambda @ edge? - PullRequest
0 голосов
/ 02 мая 2018

Я сделал перенаправление, используя lambda @ edge в Cloudfront.

Как отбросить начало координат при определенных условиях от lambda @ edge ??

Это возможно ??

1 Ответ

0 голосов
/ 02 мая 2018

Если в триггере запроса вы хотите вернуть управление в CloudFront и позволить ему продолжить обычную обработку запроса, вы вызываете обратный вызов с исходным запросом и возвращаете.

return callback(null, event.Records[0].cf.request);

Если вы захватили объект запроса ранее в обработчике ...

const request = event.Records[0].cf.request;

... тогда вы можете просто вернуть эту копию:

return callback(null, request);

Обратите внимание, что вы можете вызывать callback() без return, но использование стиля, показанного выше, обеспечивает немедленное завершение работы функции-обработчика и выполнение кода ниже этой точки.

Когда вы находитесь в триггере запроса, и второй аргумент для обратного вызова выглядит как запрос (не ответ), тогда CloudFront продолжает обработку и предполагает, что вы не хотите генерировать ответ. Запрос будет отправлен отправителю.

Если вы измените объект запроса в триггере запроса источника, а затем вернете его, как показано выше, это изменяет то, что CloudFront отправляет источнику, или в некоторых случаях может даже изменить источник отправления запроса, если ваш Распределение имеет несколько источников.

...