CORS: Errors.CORSRequestNotHttp
Причина: запрос CORS не использует HTTP
Причина
Reason: CORS request not HTTP
Что пошло не так?
В запросах CORS можно использовать только схемы URL HTTP или HTTPS, однако в указанном запросом URL используется другая схема. Это часто происходит, если URL указывает на локальный файл с использованием схемы file:///.
Чтобы устранить эту проблему, при выполнении запросов с использованием CORS, таких как fetch(), XMLHttpRequest, веб-шрифты (@font-face), текстуры WebGL и таблицы стилей XSL, используйте URL HTTPS.
Загрузка локального файла
Ранее локальные файлы из одного каталога и его подкаталогов считались имеющими одинаковое происхождение. Это означало, что файл и все его ресурсы можно было загружать из локального каталога или подкаталога во время тестирования, не вызывая ошибки CORS.
К сожалению, это создавало угрозу безопасности, о чём говорится в этом уведомлении: CVE-2019-11730. Многие браузеры, включая Firefox и Chrome, теперь (по умолчанию) считают, что все локальные файлы имеют непрозрачное происхождение. В результате при загрузке локального файла с включёнными в него локальными ресурсами теперь возникают ошибки CORS.
Разработчикам, которым необходимо проводить локальное тестирование, теперь следует настроить локальный сервер. Поскольку все файлы предоставляются с использованием одной и той же схемы и домена (localhost), они имеют одинаковое происхождение и не вызывают ошибок, связанных с межсайтовыми запросами.
Примечание: Это изменение соответствует спецификации URL, которая оставляет поведение происхождения для файлов на усмотрение реализации, но рекомендует в случае сомнений считать происхождение файлов непрозрачным.
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CORS/Errors/CORSRequestNotHttp