Как разработчик, вы должны были столкнуться с ошибкой CORS при выполнении запросов API!

Что такое КОРС? Проще говоря, это реализованный браузером механизм безопасности, который ограничивает HTTP-запросы из разных источников, сделанные из скриптов.
пр. если вы хотите получить доступ к своему API, размещенному на https://api.service.com, из внешнего клиентского приложения, размещенного на https://application.com. , браузер не позволит выполнить этот запрос!
Прежде чем мы перейдем к определению CORS, важно понять некоторые факторы, связанные с политикой единого происхождения (SOP), которые помогут нам понять поведение CORS
- Что такое политика единого источника (SOP)?
Политика единого источника — это реализованная браузерами функция безопасности, которая ограничивает загрузку документов и скриптов из одного источника может взаимодействовать с ресурсами из другого источника.
SOP ограничивает взаимодействие веб-сайта с ресурсами за пределами исходного домена и, как правило, позволяет домену отправлять запросы к другим доменам, но не получать доступ к ответам. - Что означает термин "один и тот же источник" и "другой источник"?
– Схема источника обычно определяется комбинацией протокола (например, HTTP или HTTPS), Порт (если указан) и Хост.
–При схожем Протоколе, Порт (если указан) и Хост присутствуют для обоих URL-адресов, тогда считается, что они имеют одинаковое происхождение, в противном случае — разные!

CORS (совместное использование ресурсов из разных источников)
Совместное использование ресурсов из разных источников – это механизм безопасности браузера, который обеспечивает контролируемый доступ к ресурсам, расположенным за пределами данного домена. CORS расширяет политику единого источника (SOP) и делает ее более гибкой.
Как мы знаем, в браузере есть механизм безопасности под названием Same-Origin-Policy, он блокирует запросы, сделанные к кросс-происхождению, и разрешены запросы только к аналогичному происхождению!
Когда вы хотите получить общедоступный ресурс из другого источника , сервер, предоставляющий ресурсы, должен сообщить браузеру: «Источник, откуда поступает запрос, может получить доступ к моему ресурсу». CORS запускается, когда вы отправляете запрос на:
- Другой домен (например, http://store.company.com/dir/page.html запрашивает http://news.company.com/dir). /страница.html)
- Другой порт (например, http://store.company.com/dir/page.html запрашивает http://store.company.com:81). /dir/page.html, http — порт 80 по умолчанию)
- Другой протокол (например, http://store.company.com/dir/page.html запрашивает https://store.company.com/page .html)
CORS использует некоторые заголовки HTTP, когда вы делаете запрос из другого источника:
- Браузер добавляет заголовок Origin с текущим источником (протокол, хост и порт).
- Когда сервер видит этот заголовок и хочет разрешить доступ, сервер должен вернуть заголовок Access-Control-Allow-Origin с указанием, каким клиентским доменам разрешен доступ к этому ресурсу (запрос источников).
- Когда браузер получает в ответ заголовок Access-Control-Allow-Origin, он разрешает данные ответа передаваться клиентской стороне.
Некоторые полезные ссылки для более подробного ознакомления с CORS и SOP.