Cross-Origin Resource Sharing (CORS), или механизм разделения ресурсов между разными источниками, является фундаментальным аспектом безопасности веб-приложений. Изначально предложенный браузерами для предотвращения атак на основе междоменных запросов, CORS теперь стал неотъемлемой частью веб-разработки.

Понятие Origin и междоменные запросы

  • Origin в веб-мире

Изначально определенный как «origin» в спецификации CORS, это понятие включает протокол, домен и порт. Например, «https://example.com» представляет собой полное происхождение.

  • Междоменные запросы и проблемы безопасности

Когда веб-страница и ресурс (например, скрипт, изображение или данные API) находятся на разных источниках, и браузер пытается выполнить запрос между ними, возникает проблема безопасности. Браузеры по умолчанию блокируют такие запросы из соображений безопасности.

Механизм CORS

НЕЙРОСЕТИ ДЛЯ ЖИЗНИ И КАРЬЕРЫ В 2025 году
Мы проанализировали рынок и готовы поделиться самой свежей информацией о том, как каждому эффективно взаимодействовать с нейросетями!
ТОП-подарки всем участникам лекции:
  • ТОП-подарки всем участникам лекции:Открытая лекция РЕГИСТРАЦИЯ пошаговая PDF-инструкция “Как сделать нейрофотосессию из своего фото бесплатно
  • подборка из 3800+ нейросетей
  • доступ в бот с безлимитным доступом к ChatGPT
  • Разрешение CORS: заголовки и ответы

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

«`http

Access-Control-Allow-Origin: https://trusted-source.com

«`

Если источник запроса совпадает с разрешенным источником, браузер разрешает запрос. В противном случае, запрос блокируется.

  • Дополнительные заголовки для контроля

Дополнительные заголовки, такие как `Access-Control-Allow-Methods` и `Access-Control-Allow-Headers`, позволяют серверу уточнять допустимые методы запросов и разрешенные заголовки.

«`http

Access-Control-Allow-Methods: GET, POST, OPTIONS

Access-Control-Allow-Headers: Content-Type, Authorization

«`

Пример использования в реальном проекте

Настройка сервера:

Допустим, у вас есть веб-приложение на «https://app.com», и вы хотите использовать API на «https://api.com». На сервере API добавьте следующие заголовки:

«`http

Access-Control-Allow-Origin: https://app.com

Access-Control-Allow-Methods: GET, POST, OPTIONS

Access-Control-Allow-Headers: Content-Type, Authorization

«`

Клиентский код:

На стороне клиента, в коде веб-страницы, вы можете отправить запрос:

`«javascript

fetch(‘https://api.com/data’)

.then(response => response.json())

.then(data => console.log(data))

.catch(error => console.error(‘Error:’, error));

«`

Преимущества

  • Безопасность

CORS обеспечивает безопасность, предотвращая выполнение междоменных запросов от ненадежных источников. Это контролируется на уровне браузера, что делает его удобным и эффективным механизмом.

  • Гибкость

Спецификация предоставляет множество параметров и настроек, которые позволяют тонко настраивать политики безопасности для конкретных потребностей проекта.

Заключение

CORS существенно улучшает безопасность веб-приложений, обеспечивая эффективное управление ресурсами между различными источниками. Его правильная настройка позволяет разработчикам безопасно использовать данные и сервисы из разных источников, обогащая функциональность веб-приложений.

Нейросети для жизни и карьеры в 2025:
как использовать для успеха
Вы узнаете о том:
  • Как нейросети могут изменить вашу деятельность, от фриланса до управления бизнесом.
  • Как использовать GPT-агентов, цифровые двойники и другие ИИ-решения.
  • Важность безопасности в эпоху нейросетей.
  • Какие нейросети помогут вам и как на них зарабатывать.
  • 10 способов применения ИИ для бизнеса.
Участвовать бесплатно
Как «хакнуть» Python с помощью ChatGPT
и стать «программистом будущего»
Вы узнаете:
  • Как внедрение ИИ в бизнес-процессы помогает улучшить финансовые результаты компаний в 2025 году.
  • Мы асскажем, кто такой промпт-инжинер, чем он занимается и какие результаты можно ожидать от его работы.
  • Также обсудим, где найти промт-инжинера, сколько стоят его услуги в России и за рубежем, и кто может стать промпт-инженером.
Участвовать бесплатно