CORS-конфигурация бакетов
Object Storage позволяет управлять конфигурацией CORS бакета. Для загрузки конфигурации CORS в Object Storage необходимо сформировать XML-документ, описанный в этом разделе. Скачивая существующую конфигурацию, вы получаете документ такого же формата.
Общий вид конфигурации:
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>URL</AllowedOrigin>
<AllowedMethod>HTTP_Method</AllowedMethod>
<AllowedHeader>Header_Name</AllowedHeader>
...
</CORSRule>
...
</CORSConfiguration>
Конфигурация может содержать не более 100 правил.
Элементы
|
Элемент |
Описание |
|
|
Корневой элемент конфигурации CORS. Не может содержать более 100 элементов Путь: |
|
|
Правило для фильтрации входящих запросов к ресурсу. Каждое правило должно содержать хотя бы по одному элементу Путь: |
|
|
Уникальный идентификатор правила (не более 255 символов). Необязательный. Можно использовать для поиска правила в файле. Путь: |
|
|
HTTP метод ( Путь: |
|
|
Сайт, с которого разрешены кросс-доменные запросы к бакету. Должен быть указан хотя бы один элемент Может содержать не более одного символа Путь: |
|
|
Разрешенный заголовок в запросе к объекту. Если разрешенных заголовков несколько, то каждый следует указать в отдельном Запрос методом options содержит заголовок Путь: |
|
|
Время в секундах, в течение которого браузер сохраняет в кеше результат запроса к объекту методом options. Путь: |
|
|
Заголовок, разрешенный к показу в JavaScript-приложении в браузере. Если допустимы несколько заголовков, то укажите каждый из них в отдельном элементе. В запросе к объекту JavaScript-клиент может оперировать только заголовками, определенными в элементах Путь: |
Пример
Приведенная ниже конфигурация позволяет отправлять кросс-доменные запросы с сайта http://www.example.com методами PUT, POST, DELETE без ограничений по заголовкам.
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>http://www.example.com</AllowedOrigin>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>