У меня проблема с --disable-web-security
флагом. Он не работает в Chrome 48 и Chrome 49 beta в Windows.
Я пробовал убить все экземпляры, сначала перезагрузить и запустить Chrome с флагом, также пробовал разные машины. В бета-версии я вижу всплывающее окно с предупреждением («Вы используете неподдерживаемый флаг ..»), но CORS все еще применяется. Публичная версия, похоже, полностью игнорирует флаг.
Похоже, что нет никаких новостей или сообщений об этом, так что это может быть местная проблема. Будем благодарны за помощь или любую сопутствующую информацию.
google-chrome
security
same-origin-policy
Анатолий Сазанов
источник
источник
Ответы:
Обновление 2020-04-30
Начиная с Chrome 81, для вступления в силу обязательно передать оба пути
--disable-site-isolation-trials
и непустой путь к профилю :--user-data-dir
--disable-web-security
# MacOS open -na Google\ Chrome --args --user-data-dir=/tmp/temporary-chrome-profile-dir --disable-web-security --disable-site-isolation-trials
(Предположение) Вероятно, что Chrome требует непустой путь к профилю, чтобы снизить высокий риск безопасности при запуске браузера с отключенной веб-безопасностью в профиле по умолчанию. См.
--user-data-dir=
Vs--user-data-dir=/some/path
для более подробной информации ниже.Спасибо @ Snæbjørn за совет Chrome 81 в комментариях.
Обновление 2020-03-06
Начиная с Chrome 80 (возможно, даже раньше), комбинация флагов
--user-data-dir=/tmp/some-path --disable-web-security --disable-site-isolation-trials
больше не отключает веб-безопасность .Неясно, когда кодовая база Chromium регрессировала, но загрузка более старой сборки Chromium (следуя «Непростым шагам» на странице загрузки Chromium ) - это единственный обходной путь, который я нашел. В итоге я использовал версию 77.0.3865.0, которая правильно отключает веб-безопасность с этими флагами.
Исходное сообщение 2019-11-01
В Chrome 67+ необходимо передавать
--disable-site-isolation-trials
флаг вместе с аргументами--user-data-dir=
и полностью--disable-web-security
отключать веб-безопасность.В MacOS полная команда выглядит так:
Что касается
--user-data-dir
Согласно ответу Дэвида Эйми , все еще необходимо указать,
--user-data-dir=
чтобы Chrome уважал эту--disable-web-security
опцию.--user-data-dir=
против--user-data-dir=/some/path
Хотя передача пустого пути через
--user-data-dir=
работает с--disable-web-security
, это не рекомендуется в целях безопасности, поскольку он использует ваш профиль Chrome по умолчанию, в котором есть активные сеансы входа в систему по электронной почте и т. Д. При отключенной безопасности Chrome ваши активные сеансы, таким образом, уязвимы для дополнительных входов. браузерные эксплойты.Таким образом, рекомендуется использовать альтернативный каталог для вашего профиля Chrome с расширением
--user-data-dir=/tmp/chrome-sesh
. Кредит @James B указывают на это в комментариях.Источник
Это исправление было отвергнуто в рамках тестирования браузера Cypress: https://github.com/cypress-io/cypress/issues/1951
источник
open -na Google\ Chrome --args --disable-web-security --disable-gpu --user-data-dir=~/chromeTemp
я получаю предупреждение с жалобой на~/chromeTemp
каталог, но работает--user-data-dir=C:\tmp\some-path --disable-web-security --disable-site-isolation-trials
работает в Chrome 81 на Windows 10Я вижу то же самое. Быстрый гугл нашел этот вопрос и ошибку на форумах хрома . Похоже,
--user-data-dir
флаг сейчас требуется. Отредактируйте, чтобы добавить руководство пользователя-данных-каталогаисточник
Mac OS:
open -a Google\ Chrome --args --disable-web-security --user-data-dir=
UPD: добавить
=
в--user-data-dir
потому , что новые версии хрома требуют, чтобы работыисточник
open -a Google\ Chrome --args --disable-web-security --user-data-dir=/some/dir
open -a Google\ Chrome --args --disable-web-security --user-data-dir=""
--user-data-dir=""
больше не работает с--disable-web-security
. Вам нужно поставить настоящий путь, например--user-data-dir="/tmp/temppropfile"
В OS X, чтобы открыть новое окно Chrome - без необходимости сначала закрывать уже открытые окна - передайте дополнительный флаг -n . Обязательно укажите пустую строку для data-dir (необходимо для более новых версий Chrome, например v50 something +).
Я обнаружил, что при использовании Chrome 60+ в Mac OS X Sierra указанная выше команда больше не работает, но есть небольшая модификация:
Путь к каталогу данных важен. Даже если вы находитесь в своем домашнем каталоге при выполнении команды, вы не можете просто сослаться на локальный каталог. Это должен быть абсолютный путь.
источник
Выбранный ответ хорош, но для тех, кто все еще борется с тем, о чем они говорят (вы впервые столкнулись с этой проблемой), у меня сработало следующее.
Я создал новый ярлык для Chrome на своем рабочем столе, щелкнул его правой кнопкой мыши и установил в поле «Цель» следующее:
Каталог может быть любым, я решил сделать в моем каталоге C: пустую папку с именем chrome dev. Это не имеет никакого отношения к тому, где на вашем компьютере установлен Chrome. Это просто пустяк.
По этой ссылке также есть четкие указания для других ОС. Как отключить веб-безопасность в Chrome
источник
Версия 49.0.2623.75 (64-битная) больше не находится в стадии бета-тестирования.
Команда для устранения проблемы CORS:
google-chrome-stable --disable-web-security --user-data-dir
источник
Установите этот Chrome-плагин для отключения веб-безопасности в Chrome:
Ссылка "Allow-Control-Allow-Origin: *" Здесь или вы можете использовать google выше плагин, если хотите.
с помощью этого плагина очень легко включать и отключать безопасность.
источник
Для Chrome версии 50+ для пользователей Mac. Сначала закройте весь открытый хром и выполните следующую команду
Вышеупомянутое будет работать. Благодарность
источник
Для Mac использование Safari - хороший альтернативный вариант для целей локальной разработки, и эта функция встроена в браузер (поэтому нет необходимости добавлять расширение браузера или запускать Chrome с помощью команды bash, например [open -a Google \ Chrome --args --disable -web-security --user-data-dir = ""].
Чтобы отключить ограничение перекрестного происхождения с помощью Safari (v11 +): В меню выберите «Разработка> Отключить ограничение перекрестного происхождения».
Это не требует перезапуска браузера, и, поскольку это переключатель, вы можете легко переключиться в безопасный режим.
источник
В терминал поместите это:
источник
На дату этого ответа (март 2020 г.) существует плагин для Chrome под названием CORS unblock, который позволяет пропустить эту политику браузера. «Политика одного и того же происхождения» - важная функция безопасности браузеров. Пожалуйста, устанавливайте этот плагин только в целях разработки или тестирования. Не продвигайте его установку в браузерах конечных клиентов, потому что вы ставите под угрозу безопасность пользователей, и сообщество Chrome будет вынуждено удалить этот плагин из магазина.
источник
Начиная с Chorme v81 для params
--user-data-dir=
требуется фактический параметр, тогда как в прошлом этого не было. Что-то вроде этого у меня отлично работаетисточник
Это сработало для меня. Попробуйте использовать это .. это поможет вам ..
c:\Program Files\Google\Chrome\Application>chrome.exe --disable-web-security --user-data-dir="D:\chrome"
источник