@reaget

Как быть с этой ошибкой «has been blocked by CORS policy»?

Получаю такие ошибки
OPTIONS https://delc.ru/templates/newdelc/xslt/form2019/sendform2019.php 500 (Internal Server Error)

Access to XMLHttpRequest at 'https://..../form2019/sendform2019.php' from origin 'https://www.site.ru' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.


Я пытаюсь перед данные при помощи Ajax.

Что значит эта ошибка и как ее можно устранить?

РЕШЕНИЕ
Воспользовался сервисом https://cors-anywhere.herokuapp.com/

Как пользоваться:
https://cors-anywhere.herokuapp.com/"здесь идет ваш исполняемый скрипт"
  • Вопрос задан
  • 97486 просмотров
Пригласить эксперта
Ответы на вопрос 3
inoise
@inoise
Solution Architect, AWS Certified, Serverless
100500 раз уже тут и не только тут обсуждалось. Браузеры не позволяют через js обращаться с одного домена на другой без разрешения со стороны запрашиваемого домена (cors policy). Запрашивай через curl из php, раз его в тегах указал
Ответ написан
Если у вас есть доступ к конфигурации сервера, к которому вы делаете запрос - то нстройте на нем cors и будет вам счастье)
В частности заголовки
- Access-Control-Allow-Origin
- Access-Control-Allow-Methods

Cross-origin_resource_sharing
what-is-cors
Ответ написан
Комментировать
@Dasslier
FrontEnd Developer
1. Учись гуглить, хотя бы для того, чтобы понять, что значит данная ошибка. Выше тебе отписали, что это политика безопасности кросс-доменных запросов.
2. Если работаешь с каким-нибудь API Яндекса, например, и пилишь сервис на локалке, то сделай так:
а) Купи место на хостинге, заведи любой домен.
б) Залей на хостинг файл с php кодом получения данных, функция https://www.php.net/manual/ru/function.file-get-co... с ее помощью просто запиши в переменную обращение к серверу и выведи переменную через echo
в) В файле .htaccess поставь заголовки, которые разрешают кросс-доменные запросы, о них отписано в сообщении выше.
г) запускай запрос к своему домену с php файлом и радуйся. Если используешь хром, то может не сработать запрос с этой же ошибкой, но это уже вылечится, если поставить расширение CORS из магазина расширений хром
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 05:01
999999 руб./за проект
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект