Рубрики
Uncategorized

Корс объяснил

ВВЕДЕНИЕ CORS означает обмен ресурсами кроссоригина. Это система, которая состоит … Tagged с DevOps, WebDev, новички.

Введение

Cors означает В росс- O ригин R esource S харинг Это система, которая состоит из передачи заголовков HTTP. Он определяет, блокируют ли браузеры код JavaScript от доступа к ресурсам межоооооооооооригина. Тот же политика безопасности Происхождения запрещает перекрестный доступ к ресурсам. Запрос по перекрестному происхождению является запросом на другой URL. CORS дает веб -серверам возможность разрешить Frontend JavaScript код в браузерах получить доступ к своим ресурсам.

Обзор

Когда вы получаете доступ к ресурсу в том же веб -домене, используя код Frontend JavaScript, вы можете получить к нему доступ с кодом статуса 200. Когда вы пытаетесь получить доступ к ресурсу в другом домене, используя фронтальный код JavaScript, он может вернуть вам ошибку CORS, в зависимости от конфигурации веб -сервера. Браузер не разрешает Froderend JavaScript код для доступа к ресурсам межоотранного происхождения (ресурсы в другом домене), если только веб-сервер не позволил. Вы можете разрешить перекрестные запросы происхождения на своем веб -сервере, указав происхождение Cors как * или конкретный URL, который вы хотите разрешить запросам перекрестного происхождения.

Предварительное выполнение запросов

Нестандартные заголовки HTTP, такие как Положить , Патч и Удалить нужно быть предварительно подготовленным. Это просто проверка безопасности, чтобы убедиться, что запрос безопасен для перейти на сервер. Браузер автоматически знает, когда выполнить запрос. Когда он предупреждает запрос, он включает в себя Параметры HTTP -глагол, содержащий начало имени в заголовках. Затем веб -сервер ответит, что он делает или не разрешает запрос. Приведенный выше метод неэффективен в некоторых случаях, еще один метод обработки нестандартных заголовков HTTP заключается в следующем: Веб-сервер может ответить с помощью заголовка максимального возраста ( access-control-max-age: 3600 ), что позволяет браузеру кэшировать предварительный полевой фантастик в течение определенного количества времени. Запрос будет кэширован таким образом, чтобы на сервере и базе данных было вызвано никакого расхождения (подробнее об этом в [Кэши] )

Заголовки CORS

Заголовок CORS-Felististiced

Принять , Принятие языка , Контент-языка и Контент-тип Являются ли CORS-Felistististed Заголовки запросов. При сохранении только этих заголовков запрос не должен отправлять запрос на предварительный полете на веб -сервер в контексте CORS. Больше заголовков можно безопасно с помощью Access-Control-Allow-Headers заголовок. Заголовки должны следовать определенным требованиям, чтобы быть защищенными от CORS. Требования:

  • Принятие языка и Контент-языка заголовки : Может иметь значения, состоящие только из 0-9 , A-Z , A-Z , пространство или * -. ; , =
  • Принять и Контент-тип Заголовки : не может содержать байт заголовка CORS-UNSAFE
  • Контент-тип : Он должен иметь тип типа миме своего проанализированного значения любого Приложение/X-WWW-FORM-URLENCODED или Multipart/Form-Data или Текст/Plain Чтобы обмануть вышеуказанные требования для заголовков по умолчанию, вы должны указать заголовки по умолчанию в Контроль доступа заголовок.

Заголовок ответа CORS

Это заголовок HTTP в ответе CORS, он изображает, что ответ считается безопасным для подверженности клиентским сценариям. Только заголовки ответов в безопасности доступны для веб -страниц. Заголовки от ответа, отобранные CORS, включают в себя следующие заголовки:

  • Контроль кэша
  • Контент-языка
  • Длина контента
  • Тип содержимого
  • Истекает
  • Последнее изменение
  • Прагма Вы можете расширить список заголовков ответов, отобранных CORS, указав заголовки в Контроль Access-Control-Expose Headers заголовок.

Оригинал: «https://dev.to/hamiecod/cors-explained-1168»