Skip to content

Latest commit

 

History

History
32 lines (21 loc) · 2.95 KB

CORS.md

File metadata and controls

32 lines (21 loc) · 2.95 KB

CORS

Источник идентифицируется параметрами:

  • схема
  • имя хоста
  • порт

Если хотя бы один из трех элементов у двух ресурсов отличается, то источник ресурсов также считается разным. Источник является другим, когда он расположен в другом (под)домене, протоколе или порте.

Выполнение политики одинакового источника определено этим сводом правил:

Для безопасного получения ресурсов из других источников браузеры реализуют механизм под названием CORS (Cross-Origin Resource Sharing совместное использование ресурсов).
Хотя браузеры запрещают получение ресурсов из других источников, мы можем использовать CORS для изменения этого ограничения, оставаясь при этом в безопасности.
Когда происходит запрос к другому источнику, клиент автоматически добавляет в HTTP-запрос заголовок Origin. Значением этого заголовка является источник запроса.
Для того, чтобы браузер разрешил получение ресурсов из другого источника, в ответе сервера также должен содержаться определенный заголовок.

CORS на стороне сервера
Мы можем разрешить получение наших ресурсов другими источниками посредством включения в ответ специальных заголовков,
начинающихся с Access-Control-*. На основе значения таких заголовков браузер разрешает совместное использование ресурсов.
Access-Control-Allow-Origin - значение данного заголовка определяет, какие источники могут получать наши ресурсы.

Механизм CORS, реализованный в браузере, проверяет совпадение значений заголовка ответа Access-Control-Allow-Origin и заголовка запроса Origin.