При попытке выполнить HTTP-запрос с использованием XMLHttpRequest из локального файла он в основном терпит неудачу из-за Access-Control-Allow-Origin
нарушения.
Однако я сам использую локальную веб-страницу, поэтому мне было интересно, есть ли способ заставить Google Chrome разрешать эти запросы, которые поступают из локального файла по URL-адресу в Интернете.
Например, происходит $.get('http://www.google.com/')
сбой при выполнении в локальном файле, но я сам написал сценарий для страницы и сам использую его, поэтому было бы чрезвычайно полезно, если бы я мог подавить его и загрузить URL-адрес.
Итак, как я могу разрешить Google Chrome загружать URL-адреса с помощью XMLHttpRequest из локальных файлов?
Access-Control-Allow-Origin: null
по сайту работает. (ofc. not by google.com)Ответы:
запуск Chrome с
--disable-web-security
В Windows:
На Mac:
Это позволит выполнять междоменные запросы.
Я не знаю, работает ли это также для локальных файлов, но дайте нам знать!
И обратите внимание, это именно то, что вы ожидаете, отключает веб-безопасность, так что будьте осторожны с этим.
источник
XMLHttpRequest cannot load file:///<my_local_file>. Cross origin requests are only supported for HTTP.
поэтому утверждение о браузере Safari из этой ветки больше не актуально.Использование
--disable-web-security
переключателя довольно опасно ! Зачем вообще отключать безопасность, если вы можете просто разрешить XMLHttpRequest доступ к файлам из других файлов с помощью--allow-file-access-from-files
переключателя?Перед использованием этих команд обязательно завершите все запущенные экземпляры Chrome.
В Windows:
На Mac:
Обсуждения этой «фичи» Chrome:
источник
chrome://flags
Версия для Mac. Из терминала запустить:
источник
В Ubuntu:
Подробнее / переключатели:
http://peter.sh/experiments/chromium-command-line-switches/
Ссылка из
источник