Перейти к содержимому
Aback Tools Logo

Предполетный тестер CORS

Протестируйте предварительные запросы CORS по любому URL-адресу с помощью нашего бесплатного тестера CORS Preflight Tester. Отправляйте запросы OPTIONS с настраиваемыми источниками, методами HTTP и заголовками, чтобы точно узнать, какие заголовки ответов Access-Control-* возвращает сервер. Инструмент анализирует 6 заголовков CORS и выдает вердикт «годен/не пройден» для каждой проверки, помогая быстро диагностировать проблемы конфигурации CORS. Включите режим прокси, чтобы обойти ограничения браузера и просмотреть необработанные заголовки ответов сервера. Регистрация не требуется.

CORS Preflight Tester
Send a CORS preflight (OPTIONS) request to any URL with custom headers and origin. The tool analyzes the Access-Control-* response headers and determines if a browser would allow the cross-origin request. Results show which CORS checks pass or fail with detailed explanations for each header.

Quick Test Presets

Зачем использовать наш предполетный тестер CORS?

  • Настоящее тестирование предпечатных запросов CORS: отправляйте фактические запросы OPTIONS на любой URL-адрес с настраиваемым источником, методом и заголовками. Тестер CORS Preflight Tester использует API выборки браузера для имитации реальных предполетных запросов — точно так же, как браузер отправляет запросы перед выполнением запроса между источниками. Результаты включают полные заголовки ответов от сервера, показывающие, какая именно политика CORS действует.
  • Комплексный анализ заголовков CORS: инструмент автоматически анализирует 6 ключевых заголовков ответов Access-Control-*: Allow-Origin (проверяет соответствие источника), Allow-Methods (проверяет метод HTTP), Allow-Headers (проверяет пользовательские заголовки), Allow-Credentials (проверяет поддержку файлов cookie/аутентификации), Max-Age (длительность предварительного кэширования) и Expose-Headers (заголовки, читаемые клиентом). Каждая проверка показывает «пройдено/не пройдено» с подробными пояснениями.
  • Режим прокси для тестирования перекрестного происхождения: включите параметр прокси-сервера CORS, чтобы обойти ограничения браузера на одно и то же происхождение. Если этот параметр включен, инструмент маршрутизирует запрос OPTIONS через общедоступный прокси-сервер CORS, позволяя вам видеть фактические заголовки ответов CORS сервера, даже если сервер не разрешает ваш источник. Это неоценимо для отладки проблем с конфигурацией CORS.
  • Бесплатно и без регистрации: тестируйте предварительные запросы CORS на неограниченном количестве URL-адресов без регистрации, ключа API и ограничений на использование. Все запросы передаются напрямую из вашего браузера на целевой сервер (или через бесплатный общедоступный прокси). Мы не храним, не регистрируем и не обрабатываем какие-либо тестовые данные на наших серверах. Совершенно бесплатно, навсегда.

Распространенные случаи использования предполетного тестирования CORS

  • Отладка интеграции API. Разработчики внешнего интерфейса, тестирующие интеграцию API, используют предварительный тестер CORS для диагностики ошибок CORS. Когда в консоли браузера отображается «Политика CORS: нет заголовка Access-Control-Allow-Origin», используйте тестер для отправки предварительного запроса и посмотрите, какие именно заголовки CORS возвращает сервер, а какие отсутствуют.
  • Конфигурация предварительного запроса. Разработчики серверной части, настраивающие CORS в своих API, могут использовать тестер для проверки настройки CORS своего сервера. Перед развертыванием в рабочей среде протестируйте различные источники, методы HTTP и пользовательские комбинации заголовков, чтобы убедиться, что сервер отвечает правильными заголовками Access-Control-*.
  • Проверка совместимости стороннего API. Прежде чем интегрировать сторонний API в свое веб-приложение, используйте предварительный тестер CORS, чтобы убедиться, что API поддерживает запросы между источниками из вашего домена. Проверьте, поддерживает ли API ваши HTTP-методы, пользовательские заголовки и можно ли включать учетные данные (файлы cookie) в запросы.
  • Аудит политики микросервисов CORS. Организациям с несколькими микросервисами необходимы согласованные политики CORS для всех конечных точек. Используйте предварительный тестер CORS для аудита каждой конечной точки службы, гарантируя, что все они соответствуют одной и той же конфигурации CORS. Анализ «прошел/не прошел», проводимый этим инструментом, позволяет легко обнаружить неправильно настроенные сервисы.
  • Конфигурация платформы SaaS. Платформы SaaS, предлагающие встраиваемые виджеты, SDK JavaScript или интеграцию iframe, полагаются на правильную конфигурацию CORS. Используйте предварительный тестер CORS для проверки заголовков CORS для доменов клиентов, пользовательских поддоменов и нескольких сред развертывания.
  • Устранение ошибок CORS. Когда пользователи сообщают об ошибках, связанных с CORS, в рабочей среде, предварительный тестер CORS помогает быстро определить, является ли проблема проблемой конфигурации сервера, ограничением браузера или несоответствием заголовка на стороне клиента. Подробный анализ заголовка точно определяет, какая проверка CORS не удалась.

Что такое предполетный запрос CORS?

Предварительный запрос CORS — это запрос HTTP OPTIONS, который браузер автоматически отправляет перед выполнением определенных запросов между источниками. Он запрашивает у сервера разрешение на отправку фактического запроса, проверяя, какие источники, методы и заголовки разрешены. Предварительная проверка запускается, когда запрос использует сложный метод (любой, кроме GET, HEAD или POST со стандартными типами контента), включает пользовательские заголовки или использует учетные данные (файлы cookie или заголовки авторизации).

Как работает предполетный процесс CORS

  1. Браузер проверяет, нужна ли предварительная проверка: если запрос «непростой» (другой метод HTTP, пользовательские заголовки или учетные данные), браузер отправляет предварительный запрос перед фактическим запросом.
  2. Отправляется запрос OPTIONS: браузер отправляет запрос HTTP OPTIONS на целевой URL-адрес с тремя специальными заголовками: Origin (запрашивающий источник), Access-Control-Request-Method (предполагаемый метод HTTP) и Access-Control-Request-Headers (любые предназначенные пользовательские заголовки).
  3. Сервер отвечает политикой CORS. Сервер должен ответить соответствующими заголовками Access-Control-*, указывающими его политику CORS. Браузер сверяет эти заголовки со свойствами фактического запроса.
  4. Браузер решает: если ответ сервера разрешает запрос (соответствует источнику, методу и заголовкам), браузер продолжает выполнение фактического запроса. В противном случае браузер блокирует запрос и выдает в консоли ошибку CORS.

Понимание заголовков CORS

  • Access-Control-Allow-Origin: указывает, какие источники разрешены. Может быть конкретным источником (например, https://my-app.com) или * (любым источником, но без учетных данных).
  • Access-Control-Allow-Methods: список методов HTTP, разрешенных для запросов между источниками (например, GET, POST, PUT, DELETE).
  • Access-Control-Allow-Headers: список настраиваемых заголовков, которые можно включать в запросы между источниками (например, Content-Type, Authorization).
  • Access-Control-Allow-Credentials: если установлено значение true , файлы cookie, заголовки авторизации и клиентские сертификаты TLS могут включаться в запросы между источниками.
  • Access-Control-Max-Age: указывает, как долго (в секундах) браузер может кэшировать предварительный ответ, что уменьшает количество предполетных запросов.
  • Access-Control-Expose-Headers: контролирует, к каким заголовкам ответов клиентскому коду JavaScript разрешен доступ.

Важные соображения по тестированию CORS

Тестирование CORS на основе браузера имеет присущие ограничения: если сервер не разрешает ваш источник, браузер блокирует ответ, и JavaScript не может прочитать заголовки CORS. Наш инструмент решает эту проблему, предлагая режим прокси, который маршрутизирует запрос через общедоступный прокси-сервер CORS, позволяя вам видеть фактические заголовки ответов сервера независимо от политики CORS сервера. Однако режим прокси имеет свое собственное поведение — прокси добавляет свои собственные заголовки CORS. Для получения наиболее точных результатов тестируйте как с прокси-сервером, так и без него. Для отладки в рабочей среде всегда проверяйте конфигурацию CORS с помощью серверных инструментов, таких как Curl.

Часто задаваемые вопросы

Предварительный запрос CORS — это запрос HTTP OPTIONS, который браузеры автоматически отправляют перед выполнением «непростых» запросов между источниками. Он запрашивает разрешение у целевого сервера, проверяя, какие источники, методы HTTP и пользовательские заголовки разрешены. Предварительные запросы запускаются, когда запрос использует сложный метод (PUT, DELETE, PATCH и т. д.), включает пользовательские заголовки (например, Authorization или Content-Type: application/json) или использует учетные данные (файлы cookie).

Введите целевой URL-адрес, выберите метод HTTP, при необходимости укажите источник и пользовательские заголовки, затем нажмите «Отправить предварительный запрос». Инструмент отправляет запрос OPTIONS на целевой сервер и анализирует заголовки ответа Access-Control-*. Он проверяет 6 заголовков CORS и показывает пройден/не пройден для каждого с подробными пояснениями. Включите режим прокси, чтобы обойти ограничения браузера при тестировании серверов, блокирующих ваше происхождение.

Тестер предварительной проверки CORS проверяет 6 ключевых заголовков ответов Access-Control-*: Allow-Origin (сопоставление источника), Allow-Methods (проверка метода HTTP), Allow-Headers (разрешения настраиваемых заголовков), Allow-Credentials (поддержка файлов cookie/аутентификации), Max-Age (длительность предварительного кэширования) и Expose-Headers (заголовки, доступные клиенту). Каждая проверка отображается с индикатором «пройдено/не пройдено» и подробным описанием результата.

Ошибка CORS возникает, когда целевой сервер не разрешает запросы между источниками из вашего источника. Политика безопасности браузера блокирует ответ и выдает ошибку TypeError. Чтобы увидеть фактические заголовки ответов сервера, включите переключатель «Использовать прокси-сервер CORS» — это маршрутизирует запрос через общедоступный прокси-сервер, который обходит ограничения браузера, позволяя вам увидеть, какие именно заголовки CORS возвращает сервер.

Простые запросы используют стандартные методы (GET, HEAD, POST с типом контента: form-urlencoded, multipart/form-data или text/plain) и не используют специальные заголовки — они обходят предварительную проверку и передаются непосредственно на сервер. Непростые запросы (PUT, DELETE, PATCH, пользовательские заголовки, такие как Authorization или Content-Type: application/json) сначала запускают предполетный запрос OPTIONS. Наш инструмент позволяет протестировать оба сценария.

Используйте режим прокси, если целевой сервер не разрешает ваш источник и вы хотите увидеть фактические заголовки ответов CORS сервера. Без режима прокси прямые запросы OPTIONS работают для целей и серверов того же происхождения с разрешительным CORS. Для получения наиболее точных результатов тестирования попробуйте оба режима: сначала прямой (чтобы имитировать работу реального браузера), затем режим прокси (чтобы увидеть полный ответ сервера).

Да. Включите файлы cookie или аутентификацию, добавив заголовок авторизации в разделе «Пользовательские заголовки». Проверка Access-Control-Allow-Credentials этого инструмента покажет вам, разрешает ли сервер учетные данные в запросах между источниками. Обратите внимание: если включены учетные данные, серверы не могут использовать подстановочный знак (*) для Access-Control-Allow-Origin — они должны указать точное происхождение.

Да! Предполетный тестер CORS на 100 % бесплатен, не требует регистрации, ключа API и ограничений на использование. Тестируйте столько URL-адресов, сколько вам нужно, и так часто, как вам нужно. Все запросы передаются напрямую из вашего браузера на целевой сервер (или через бесплатный общедоступный прокси). Мы не храним, не регистрируем и не обрабатываем какие-либо тестовые данные на наших серверах.