Бессерверный обработчик изображений Amazon, проблема с CORS

#amazon-web-services #amazon-cloudfront

#amazon-веб-сервисы #amazon-cloudfront

Вопрос:

У меня развернут обработчик изображений без сервера Amazon, согласно документации от https://docs.aws.amazon.com/solutions/latest/serverless-image-handler/deployment.html

который работает отлично, и я получаю изображения с изменениями размеров.

Теперь, когда я использую эти изображения в коде на основе canvas или WebGL "has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource"

Затем я сослался ниже на это

https://aws.amazon.com/premiumsupport/knowledge-center/no-access-control-allow-origin-error/

И соответствующим образом настроил мое поведение CloudFront. Тем не менее, я получаю ту же проблему. Чего мне не хватает ниже, так это конфигурации моей вкладки CloudFront Behavior. Мой

И ниже приведена моя конфигурация S3 CORS

введите описание изображения здесь

Тем не менее, я получаю ту же проблему. Чего мне не хватает

Комментарии:

1. Какой HTTP-метод вы используете для выполнения HTTP-запроса?

Ответ №1:

S3 добавляет заголовки CORS, только если к запросу добавлен заголовок Origin. Исходя из вашей проблемы, вы можете попробовать следующее: 1. Один раз аннулируйте кеш, чтобы убедиться, что был внесен в белый список заголовок Origin, повторно перейдя по ссылке и проверьте, не ПРОПУЩЕН ли он из CloudFront. (В данном случае это может быть ошибка из CloudFront из-за обработки ошибки в ответе Lambda @ edge Origin) 2. проверьте запрос, сделанный lambda logs в CloudWatch, и зарегистрируйте запрос, чтобы увидеть, отправляет ли он заголовок Origin в S3.