Désactiver la même politique d'origine dans Chrome

est-il possible de désactiver le " Politique de même origine sur le navigateur Chrome de Google?

ceci est strictement pour le développement, pas l'utilisation de production.

1137
demandé sur MRFrhn 2010-06-23 19:00:21

26 réponses

Fermer chrome (ou chrome) et redémarrer avec l'argument --disable-web-security . Je viens de testé et vérifié que je peux accéder au contenu d'une iframe src="http://google.com" incorporé dans une page servi de "localhost" (testé sous chrome 5 / ubuntu). Pour moi la commande exacte était:

Note : supprimer toutes les instances chrome avant d'exécuter la commande

chromium-browser --disable-web-security --user-data-dir="[some directory here]"

le navigateur vous avertira que "vous utilisez une ligne de commande non supportée" quand elle s'ouvre pour la première fois, que vous pouvez ignorer.

du chrome source:

// Don't enforce the same-origin policy. (Used by people testing their sites.)
const wchar_t kDisableWebSecurity[] = L"disable-web-security";

avant Chrome 48, Vous pouvez juste utiliser:

chromium-browser --disable-web-security
819
répondu Dagg Nabbit 2018-06-05 18:05:58

Oui. Pour OSX, ouvrez le Terminal et lancez:

$ open -a Google\ Chrome --args --disable-web-security --user-data-dir

--user-data-dir requis sur Chrome 49+ sur OSX

Pour Linux run:

$ google-chrome --disable-web-security

aussi si vous essayez d'accéder à des fichiers locaux pour des besoins de développement comme AJAX ou JSON, vous pouvez utiliser ce drapeau aussi.

-–allow-file-access-from-files

Pour Windows, allez dans l'invite de commande et allez dans le dossier où Chrome.exe is Et type

chrome.exe --disable-web-security

qui devrait désactiver la même politique d'origine et vous permettre d'accéder aux fichiers locaux.

mise à jour: pour Chrome 22 + Vous recevrez un message d'erreur qui dit:

vous utilisez une option de ligne de commande non supportée: --disable-web-security. La stabilité et la sécurité en souffrira.

Cependant, vous pouvez simplement ignorer ce message alors que développer.

917
répondu ectype 2017-05-23 12:26:36

pour les utilisateurs de Windows:

le problème avec la solution acceptée ici, à mon avis est que si vous avez déjà Chrome ouvert et essayer d'exécuter ceci, il ne fonctionnera pas.

cependant, lors de mes recherches, je suis tombé sur un post sur Super User, est-il possible D'exécuter Chrome avec et sans sécurité web en même temps? .

essentiellement, en exécutant la commande suivante (ou création d'un raccourci avec elle et l'ouverture de Chrome par qui)

chrome.exe --user-data-dir="C:/Chrome dev session" --disable-web-security

vous pouvez ouvrir une nouvelle instance" non sécurisée "de Chrome en même temps que vous gardez vos autres instances" sécurisées " de navigateur ouvertes et fonctionnant normalement.

378
répondu Ola Karlsson 2017-03-20 10:18:14

Pour Windows :

  1. ouvrir le menu Démarrer
  2. Type windows + R ou ouvrez "Exécuter"
  3. exécutez la commande suivante:

    chrome.exe --user-data-dir="C://Chrome dev session" --disable-web-security
    

Pour Mac :

  1. Aller à la Borne
  2. exécutez la commande suivante:

    open /Applications/Google\ Chrome.app --args --user-data-dir="/var/tmp/Chrome dev session" --disable-web-security
    

un nouveau navigateur chrome désactivé par la sécurité web devrait s'ouvrir avec le message suivant:

enter image description here

69
répondu GSB 2017-05-13 20:43:26

Je ne voulais pas redémarrer Chrome et désactiver ma sécurité web (parce que je naviguais pendant le développement) et je suis tombé sur cette extension Chrome.

Chrome Web Store Allow-Control-Allow-Origin: *

(https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=en)

en gros, C'est un petit interrupteur à bascule pour activer et désactiver le Allow-Access-Origine-Contrôle. Ça me va parfaitement pour ce que je fais.

EDIT: j'ai essayé d'utiliser le just l'autre jour pour un autre projet et il a cessé de fonctionner. Désinstaller et réinstaller l'extension l'a corrigé (pour réinitialiser les valeurs par défaut).

66
répondu Coburn 2015-03-18 13:33:00

Pour Windows... créez un raccourci Chrome sur votre bureau.

Clic droit > Propriétés > raccourci

Modifier le chemin" cible":

"C:\Program Files\Google\Chrome\Application\chrome.exe" --args --disable-web-security

(modifier le " C:....\chrome.exe " à l'endroit où jamais votre chrome est situé).

et voilà:)

41
répondu molokoloco 2018-01-24 13:52:33

pour windows utilisateurs avec version Chrome 60.0.3112.78 . Vous ne devez pas fermer n'importe quelle instance chrome.

  1. créez un raccourci sur votre bureau
  2. clic droit sur le raccourci et cliquez Propriétés
  3. modifier la propriété cible
  4. fixe à " C:\Program dossiers (x86)\Google\Chrome\Application\chrome.exe " --disable-web-security --user-data-dir="C:/ChromeDevSession "
  5. Start chrome et ignore le message qui dit -- disable-web-security n'est pas supporté!

MÉFIEZ-VOUS DE NE PAS UTILISER CETTE INSTANCE DE NAVIGATEUR PARTICULIER POUR LA NAVIGATION PARCE QUE VOUS POUVEZ ÊTRE PIRATÉ AVEC ELLE!

39
répondu Ognyan Dimitrov 2018-08-03 18:44:40

semble qu'aucune des solutions ci-dessus ne fonctionne réellement. Le --disable-web-security n'est plus supporté dans les versions récentes de chrome.

Allow-Control-Allow-Origin: * - chrome extension partiellement résolu le problème. Cela ne fonctionne que si votre requête utilise la méthode GET et qu'il n'y a pas d'en-tête HTTP personnalisé. Sinon, chrome enverra les OPTIONS HTTP request comme une requête pré-vol. Si le serveur ne supporte pas CORS, il répondra avec le code D'état HTTP 404. Le plugin ne peut pas modifier le code D'état de la réponse HTTP. Chrome rejettera donc cette demande. Il n'y a aucun moyen pour le plugin chrome de modifier le code D'état de la réponse HTTP basé sur l'API actuelle d'extension chrome. Et vous ne pouvez pas faire une redirection aussi bien pour une requête initialisée par XHR.

Je ne sais pas pourquoi Chrome rend la vie des développeurs si difficile. Il bloque toutes les façons possibles de désactiver le contrôle de sécurité XSS même pour une utilisation de développement qui est totalement inutile.

après des jours de lutte et de recherche, une solution fonctionne parfaitement pour moi: utiliser corsproxy . Vous avez deux options ici: 1. utilisation corsproxy.com 2. installer corsproxy dans la boîte locale: npm install-g corsproxy

[mis à Jour le 23 Juin 2018] Récents je suis l'élaboration d'un SPA d'application qui doivent utiliser corsproxy de nouveau. Mais apparemment aucun des corsproxy sur le github ne peut rencontrer mon exigence.

  • besoin de l'exécuter à l'intérieur du pare-feu pour des raisons de sécurité. Donc je ne peux pas utiliser https://cors-anywhere.herokuapp.com / .
  • il doit prendre en charge https car chrome va bloquer la requête ajax no-https dans une page https.
  • je dois courir sur nodejs. Je ne veux pas entretenir une autre pile de langues.

donc j'ai décidé de développer ma propre version de corsproxy avec nodejs. C'est en fait très simple. Je l'ai publié comme un gist sur le github. Voici le code source gist: https://gist.github.com/jianwu/8e76eaec95d9b1300c59596fbfc21b10

  • C'est dans la plaine de nodejs code sans dépendances supplémentaires
  • vous pouvez exécuter en mode http et https (en passant le port https) nombre en ligne de commande), pour exécuter https, vous devez générer cert et la clé et mettre la webroot répertoire.
  • il sert aussi de serveur de fichiers statique
  • il prend en charge la demande D'OPTION pré-vol.
34
répondu Jianwu Chen 2018-06-23 08:04:02

je trouve que la meilleure façon de faire ceci est de dupliquer un raccourci Chrome ou Chrome Canary sur votre bureau windows. Renommer ce raccourci en "NO CORS" puis éditer les propriétés de ce raccourci.

dans la cible ajouter --disable-web-security --user-data-dir="D:/Chrome" à la fin du chemin d'accès cible.

votre cible devrait ressembler à quelque chose comme ceci:

mise à Jour: Nouveaux indicateurs ajouté.

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir="D:/Chrome"

enter image description here

31
répondu etoxin 2016-09-27 07:52:06

essayez cette commande sur Mac terminal -

open -n -a "Google Chrome" --args --user-data-dir=/tmp/temp_chrome_user_data_dir http://localhost:8100/ --disable-web-security 

il ouvre une autre instance de chrome avec une sécurité désactivée et il n'y a plus de problème CORS. De plus, vous n'avez plus besoin de fermer d'autres instances GoogleChrome. Modifiez l'URL localhost de votre.

20
répondu Vivek Sinha 2018-06-05 14:49:10

vous pouvez utiliser ce plugin chrome appelé" Allow-Control-Allow-Origin:*"... C'est très simple et ça marche très bien. vérifier ici: *

Chrome extenstion

17
répondu Mohamed Saleh 2017-03-02 14:21:09

pour Selenium Webdriver, vous pouvez avoir selenium start Chrome avec les arguments appropriés (ou" switches") dans ce cas.

 @driver = Selenium::WebDriver.for(:Chrome, { 
       :detach => false,
       :switches => ["--disable-web-security"]
    })
16
répondu mikelupo 2012-08-22 10:20:22

si vous utilisez Google Chrome sous Linux, la commande suivante fonctionne.

google-chrome  --disable-web-security
12
répondu chhantyal 2012-06-15 09:46:08

ce plugin Chrome fonctionne pour moi: Allow-Control-Allow-Origin: * - Chrome Web Store

12
répondu Bruce 2014-09-12 03:29:21
chromium-browser --disable-web-security --user-data-dir=~/ChromeUserData/
9
répondu MechaCode 2016-05-20 10:50:14

vous pouvez simplement utiliser cette extension chrome Allow-Control-Allow-Origin

il suffit de cliquer sur l'icône de l'extensnion pour activer le partage croisé des ressources sur ou hors que vous voulez

8
répondu Peter Wilson 2015-05-25 16:23:34

sur Windows 10, ce qui suit fonctionnera.

<<path>>\chrome.exe --allow-file-access-from-files --allow-file-access --allow-cross-origin-auth-prompt
8
répondu ItsAllABadJoke 2015-12-29 17:16:06

suite à la réponse D'Ola Karlsson, en effet la meilleure façon serait d'ouvrir le Chrome dangereux dans une autre session. De cette façon, vous ne devez pas vous soucier de fermer tous les onglets actuellement ouverts, et peut également continuer à surfer sur le web en toute sécurité avec la session Chrome originale.

ces fichiers par lot doivent fonctionner pour vous sous Windows.

mettez-le dans un Chrome_CORS.fichier bat pour une utilisation facile

start "" "c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir="c:/_chrome_dev" --disable-web-security

celle-ci est pour Chrome Canary . Canary_CORS.MTD

start "" "c:\Users\%USERNAME%\AppData\Local\Google\Chrome SxS\Application\chrome.exe" --user-data-dir="c:/_canary_dev" --disable-web-security
7
répondu guya 2016-01-14 21:17:04

POUR MAC UTILISATEUR SEULEMENT

open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/someFolderName" --disable-web-security
7
répondu Saurabh Chandra Patel 2017-05-16 09:00:11

il y a une extension chromée appelée bascule CORS.

Cliquez ici pour y accéder et ajoutez-le à Chrome .

après l'ajout, basculez-le à la position sur pour permettre les requêtes inter-domaines.

6
répondu Mowzer 2016-12-11 03:21:44

pour les utilisateurs mac:

open -a "Google Chrome" --args --disable-web-security --user-data-dir

et avant Chrome 48, Vous pouvez juste utiliser:

open -a "Google Chrome" --args --disable-web-security
5
répondu Braian Mellor 2016-08-31 19:41:14

ne faites pas ça! vous ouvrez vos comptes à attacks . Une fois que vous le faites, n'importe quel site tiers peut commencer à émettre des demandes à d'autres sites Web, les sites dans lesquels vous êtes connecté.

exécute plutôt un serveur local. C'est aussi simple que d'ouvrir un shell/terminal/ligne de commande et de taper

cd path/to/files
python -m SimpleHTTPServer

pointant ensuite votre navigateur vers

http://localhost:8000

si vous trouvez que c'est trop lent envisager cette solution

5
répondu gman 2017-07-18 05:25:25

Pour Windows:

(utilisant windows 8.1, chrome 44.0 )

tout d'abord, fermez google chrome.

Ensuite, ouvrez l'invite de commande et allez dans le dossier où 'chrome.l'exe l'est.

( for me: 'chrome.exe' is here "C:\Program Files (x86)\Google\Chrome\Application".

tapez donc: cd C:\Program Files (x86)\Google\Chrome\Application )

maintenant type: chrome.exe --disable-web-security

une nouvelle fenêtre de chrome s'ouvrira.

3
répondu Fuad Ahmad 2015-08-02 06:39:12

sur un PC Windows, utilisez une ancienne version de Chrome et la commande fonctionnera pour tous les gars. J'ai déclassé mon Chrome en version 26 et ça a marché.

2
répondu user1578524 2014-02-20 04:05:50

sous Linux-Ubuntu, pour exécuter simultanément une session normale et une session dangereuse, exécutez la commande suivante:

google-chrome  --user-data-dir=/tmp --disable-web-security
2
répondu Santiago M. Quintero 2018-09-14 04:23:31

Je l'utilise parfois, pour poster un site localhost front-end sur une API localhost back-end (par exemple React to an old .NET API). J'ai créé un raccourci séparé sur mon bureau Windows 10, de sorte qu'il n'est jamais utilisé pour la navigation normale, seulement pour le débogage local. J'ai fait ce qui suit: -

  1. clic droit sur le Bureau, Ajouter un nouveau raccourci
  2. ajouter la cible comme "[PATH_TO_CHROME]\chrome.exe" --disable-web-security
  3. cliquez sur OK.

, Vous obtiendrez un avertissement sur la charge de ce navigateur, qu'il n'est pas sûr, il suffit de faire attention à ce que vous navigateur. J'ai tendance à renommer ce nouveau raccourci sur le bureau, quelque chose en capital, et le déplacer de mes autres icônes, de sorte qu'il ne peut pas être confondu avec Chrome normal.

Espérons que cette aide!

0
répondu Mike Upjohn 2017-12-28 15:05:18