Я использую Amazon S3 в качестве backend. У меня есть ведро, правильно настроенное, чтобы позволить CORS что-либо из моего домена. Я тестировал, что он работает для обычных файлов (т. Е. Загружается через консоль Amazon AWS или с помощью инструментов командной строки S3).Amazon S3 Запрос CORS не удался для загруженных файлов
Мое приложение также загружает файлы JSON непосредственно в ведро S3. Интересно, что CORS правильно настроен для успешной загрузки. Это происходит, и мой JSON-файл помещается в ведро.
Проблема заключается в том, когда я делаю запрос CORS GET (JQuery $.ajax
) для этих файлов я ранее загруженных, запрос не с типичным сообщением
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Пожалуйста, обратите внимание, что с любым другим файлом в том же ведре, тот же путь, который не был загружен приложением, но из консоли или инструментов линии comnmand запрос успешно завершен.
Почему это происходит? Конфигурация
Мои CORS:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
<CORSRule>
<AllowedOrigin>http://example.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
<CORSRule>
<AllowedOrigin>https://example.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
Вы делаете запрос ajax через localhost? Возможно ли, что это проблема политики одного и того же происхождения (https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy)? –
это не так, потому что запрос GET завершается неудачно для файлов **, ранее загруженных из приложения **, если я загружаю их через консоль S3 или S3CMD, это удается. – rupps
Можете ли вы разместить свой javascript-код? –