CORS (Cross-Origin Resource Sharing) — это система, состоящая из передачи HTTP-заголовков, которая определяет, блокируют ли браузеры интерфейсный код JavaScript от доступа к ответам на запросы из разных источников.
Политика безопасности одного и того же происхождения запрещает доступ к ресурсам из разных источников. Но CORS дает веб-серверам возможность заявить, что они хотят разрешить доступ к своим ресурсам из разных источников.
Access-Control-Allow-Origin | Указывает, можно ли поделиться ответом. |
Access-Control-Allow-Credentials | Указывает, может ли быть предоставлен ответ на запрос, если флаг учетных данных имеет значение true. |
Access-Control-Allow-Headers | Используется в ответ на предполетный запрос, чтобы указать, какие заголовки HTTP можно использовать при выполнении фактического запроса. |
Access-Control-Allow-Methods | Указывает метод или методы, разрешенные при доступе к ресурсу в ответ на предполетный запрос. |
Access-Control-Expose-Headers | Указывает, какие заголовки могут быть представлены как часть ответа, путем перечисления их имен. |
Access-Control-Max-Age | Указывает, как долго могут кэшироваться результаты предполетного запроса. |
Access-Control-Request-Headers | Используется при выдаче предполетного запроса, чтобы сообщить серверу, какие заголовки HTTP будут использоваться при выполнении фактического запроса. |
Access-Control-Request-Method | Используется при выдаче предполетного запроса, чтобы сообщить серверу, какой метод HTTP будет использоваться при выполнении фактического запроса. |
Origin | Указывает, откуда происходит выборка. |
Timing-Allow-Origin | Указывает источники, которым разрешено видеть значения атрибутов, полученных с помощью функций API синхронизации ресурсов, которые в противном случае были бы указаны как ноль из-за ограничений между источниками. |