Cross-Origin Resource Sharing
Cross-Origin Resource Sharing (CORS, спільне використання ресурсів з різних джерел) — механізм безпеки сучасних браузерів, який дозволяє веб-сторінкам використовувати дані, що знаходяться на інших доменах. Тобто реалізує захист для веб-сторінок, які не відповідають політиці одного походження[1].
Раніше для отримання доступу до ресурсів з інших адрес використовувався JSONP, проте він має суттєве обмеження підтримує тільки GET запити. Використання CORS дозволяє веб-програмісту використовувати звичайний XMLHttpRequest, який дозволяє кращу обробку помилок ніж JSONP. З іншого боку, JSONP працює на застарілих браузерах, які не мають підтримки CORS. CORS підтримується більшістю сучасних браузерів.[2]
Для реалізації цього механізму, веб-сервер з якого завантажується веб-сторінка додає в HTTP-заголовок окремий тег, в якому перераховано домени, з яких веб-сторінка може отримувати дані.
Access-Control-Allow-Origin: https://uk.wikipedia.org
Браузер, який отримав таку відповідь від веб-сервера, дозволить веб-сторінці запитувати та отримувати дані тільки від двох веб-серверів: 1) з якого веб-сторінка була завантажена та 2) з https://uk.wikipedia.org