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

1572

Existe-t-il un moyen de désactiver la politique d'origine identique sur le navigateur Chrome de Google ?

Landon Kuhn
la source
1
Voir aussi peter.sh/experiments/chromium-command-line-switches , je ne suis pas sûr de son authenticité mais il semble que ce soit une collection produite par un processus automatisé
CSSian
1
chromium.org renvoie à la peter.shpage, donc doit être assez légitime.
Benjineer
2
Notez que la désactivation de SOP, même lorsqu'elle n'est utilisée que pour le développement, est dangereuse. Lorsque vous démarrez votre navigateur de cette façon, vous allez probablement non seulement ouvrir votre application, mais aussi consulter vos e-mails, lire SO… Envisager d'utiliser de meilleures alternatives, par exemple des proxys Web, pour résoudre ces problèmes. Par exemple via proxrox: github.com/bripkens/proxrox
BenR
29
Depuis la version 49, utilisez cette option--disable-web-security --user-data-dir
vanduc1102
3
Pour tous ceux qui recherchent des conseils sur la façon de le faire dans un environnement de développeur utilisant un serveur d'exécution grunt, voir ceci: gist.github.com/Vp3n/5340891
GrayedFox

Réponses:

1038

Fermez chrome (ou chrome) et redémarrez avec l' --disable-web-securityargument. Je viens de tester cela et de vérifier que je peux accéder au contenu d'un iframe avec src = "http://google.com" intégré dans une page servie à partir de "localhost" (testé sous chrome 5 / ubuntu). Pour moi, la commande exacte était:

Remarque: Tuez toutes les instances de 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 prise en charge» lors de sa première ouverture, ce que vous pouvez ignorer.

De la source de chrome:

// 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 pouviez simplement utiliser:

chromium-browser --disable-web-security
Dagg Nabbit
la source
115
Comment faire cela sur OS X?
Landon Kuhn
14
@ landon9720 voir la réponse par ectype .
ANeves
8
@Berty Fermez simplement Chrome et ouvrez-le sans le tag. Chrome ne sera dans ce mode que s'il a été ouvert avec cette balise
Nick
84
@ landon9720 Fermer Chrome, terminal ouvert, tapezopen /Applications/Google\ Chrome.app --args --disable-web-security
Seanonymous
17
Dans Chrome 48 et 49, il faut également ajouter --user-data-dir.
Jacob Lauritzen
1070

Oui. Pour OSX, ouvrez Terminal et exécutez:

$ 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

De plus, si vous essayez d'accéder à des fichiers locaux à des fins de développement comme AJAX ou JSON, vous pouvez également utiliser cet indicateur.

-–allow-file-access-from-files

Pour Windows, allez dans l'invite de commande et allez dans le dossier où se trouve Chrome.exe et tapez

chrome.exe --disable-web-security

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

Mise à jour: pour Chrome 22+, un message d'erreur s'affiche:

Vous utilisez un indicateur de ligne de commande non pris en charge: --disable-web-security. La stabilité et la sécurité en souffriront.

Cependant, vous pouvez simplement ignorer ce message pendant le développement.

ectype
la source
7
Je viens de l'essayer sur pc (chrome 29) et je reçois toujours ces jolis Origin *** n'est pas autorisé par Access ...
Sam
23
@Sam Assurez-vous d'avoir fermé tous les processus Chrome, puis réessayez. Chrome affichera un en-tête d'avertissement si vous l'avez fait correctement: "Vous utilisez un indicateur de ligne de commande non pris en charge: --disable-web-security. La stabilité et la sécurité en souffriront"
Morten Haraldsen
2
Existe-t-il un moyen d'empêcher le message d'erreur d'apparaître également? J'utilise ce drapeau sur un panneau mural numérique sans clavier ni souris.
Bart van Heukelom
64
Et apparemment, --disable-web-securitycela ne fonctionne pas à moins que vous ne donniez également explicitement un --user-data-dir. c'est-à-dire OSX /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-web-security --user-data-dir=~/ChromeUserData/.
WiseOldDuck
20
Vous n'avez pas à fermer tous les processus Chrome en premier. Vous pouvez utiliser open -n. Courez simplement open -n -a Google\ Chrome --args --disable-web-security --user-data-dir=/tmp/chrome. Cela ouvrira une deuxième instance d'application Chrome sur votre Mac et vous pourrez les utiliser côte à côte.
The Pellmeister
520

Pour les utilisateurs de Windows:

Le problème avec la solution acceptée ici, à mon avis, c'est que si vous avez déjà ouvert Chrome et essayez de l'exécuter, cela 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?.

Fondamentalement, en exécutant la commande suivante (ou en créant un raccourci avec elle et en ouvrant Chrome à travers cela)

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 vos autres instances de navigateur "sécurisées" restent ouvertes et fonctionnent normalement. Important : supprimer / effacer le C:/Chrome dev sessiondossier à chaque fois que vous ouvrez une fenêtre car la deuxième fois --disable-web-securityne fonctionnera pas. Vous ne pouvez donc pas enregistrer vos modifications, puis l'ouvrir à nouveau en tant que seconde instance non sécurisée de Chrome avec --disable-web-security.

Ola Karlsson
la source
17
super merci. grâce à cela, j'ai pu lancer une page web en tant qu'application indépendante"C:\..\chrome.exe" --disable-web-security --user-agent="Android" --user-data-dir="C:/temp-chrome-eng" --app="file:///C:/apps/index.html"
Elvis Ciotti
2
Précisément ce dont j'avais besoin lors d'une tentative de développement contre une API sur ma machine locale.
opinion générale
4
Cela a fonctionné un régal. Il a également laissé mon instance normale de Chrome avec la sécurité activée et le fonctionnement normal. Juste une note latérale quand cela fonctionne, Chrome vous avertira que "la stabilité et la sécurité en souffriront".
etoxin
1
Comment faire cela sur un Mac? Essayé en utilisant open -a Google\ Chrome --args --disable-web-security -–allow-file-access-from-files --user-data-dir="/Users/myuser/temp/chromeData", il vient de faire le focus de la fenêtre chrome existante, rien d'autre?
user3648895
17
Cette commande fonctionne sous OSX en démarrant une deuxième instance: open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/chrome_dev_session" --disable-web-security (Vous devrez peut-être créer le dossier temporaire en premier)
chilltemp
161

Pour Windows :

  1. Ouvrez le menu de démarrage
  2. Tapez windows+ Rou ouvrez "Exécuter"
  3. Exécutez la commande suivante:

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

Pour Mac :

  1. Accéder au terminal
  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é pour la sécurité Web devrait s'ouvrir avec le message suivant:

entrez la description de l'image ici

GSB
la source
7
@downvoters veuillez mentionner la raison du downvote car il n'y a aucun point de downvote en réponse
GSB
1
A bien fonctionné pour moi sur Windows 10, n'a pas eu besoin de fermer les autres instances Chrome non plus.
Nick M
Cela a fonctionné sur Windows 10. Je l'ai vu ailleurs mais il dit de l'exécuter sur la ligne de commande au lieu des fenêtres Run.
chidimo
Cela fonctionne très bien, comment puis-je les utiliser pour IE, Edge!
Jason Brody
cela fonctionne bien. J'ai souffert de ce problème CORS pendant des heures et je l'ai trouvé.
Achintha
78

Pour les utilisateurs de Windows avec les versions Chrome 60.0.3112.78 (le jour où la solution a été testée et travaillée) et au moins jusqu'à aujourd'hui 19.01.2019 (ver. 71.0.3578.98) . Vous n'avez pas besoin de fermer d'instance Chrome.

  1. Créez un raccourci sur votre bureau
  2. Cliquez avec le bouton droit sur le raccourci et cliquez sur Propriétés
  3. Modifier la propriété Target
  4. Réglez-le sur "C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe" --disable-web-security --user-data-dir = "C: / ChromeDevSession"
  5. Démarrez Chrome et ignorez le message qui dit que --disable-web-security n'est pas pris en charge!

ATTENTION À NE PAS UTILISER CETTE INSTANCE DE NAVIGATION PARTICULIÈRE POUR NAVIGUER PARCE QUE VOUS POUVEZ ÊTRE HACKED AVEC ELLE!

Ognyan Dimitrov
la source
A fonctionné comme un charme. Je ne peux pas croire que Chrome ne permette pas aux développeurs de désactiver cela sans démarrer une nouvelle session. Au moins, ils ont un moyen.
FearlessFuture
et pouvez-vous toujours utiliser le débogage de chrome sur votre code source?
Righto
vient d'être testé, vous pouvez toujours utiliser l'outil de développement sous ce mode.
KuN
Cette solution fonctionne toujours à partir de la version chromée 71 Merci beaucoup!
Motoman
Fonctionne avec 72.0.3626.109. Beaucoup aidé!
Pavel Molchanov
76

EDIT 3: Semble que l'extension n'existe plus ... Normalement, pour contourner CORS ces jours-ci, j'ai configuré une autre version de Chrome avec un répertoire séparé ou j'utilise Firefox avec https://addons.mozilla.org/en-US/ firefox / addon / cors-partout / à la place.

EDIT 2: Je ne peux plus faire fonctionner cela de manière cohérente.

EDIT: J'ai essayé d'utiliser le juste l'autre jour pour un autre projet et il a cessé de fonctionner. La désinstallation et la réinstallation de l'extension l'ont corrigé (pour réinitialiser les paramètres par défaut).

Réponse originale:

Je ne voulais pas redémarrer Chrome et désactiver ma sécurité Web (car je naviguais pendant le développement) et 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)

Fondamentalement, c'est un petit interrupteur à bascule pour activer et désactiver la vérification Allow-Access-Origin-Control. Fonctionne parfaitement pour moi pour ce que je fais.

Coburn
la source
1
comment j'obtiens et m'intègre à mon extension car mon extension doit accéder à plusieurs domaines. Je ne peux pas forcer l'utilisateur à ouvrir le navigateur avec disable-web-security
basé sur le code
1
Cette extension ne fonctionnera malheureusement pas pour les fichiers locaux. Tenez-vous au --disable-web-securitycommutateur dans ce cas.
bryc
2
@bryc Ce n'est pas vraiment prévu. Considérez cependant que vous pouvez utiliser --allow-file-access-from-filesau lieu de désactiver toute la sécurité Web.
Coburn
1
Attention! Certains sites ne vous permettent pas de vous connecter avec cette extension activée! Console Firebase, par exemple.
campsjos
1
"L'extension n'existe plus" pouvez-vous supprimer votre réponse ou au moins mettre Edit 3 en haut en gras
Michael Freidgeim
48

Il semble qu'aucune des solutions ci-dessus ne fonctionne réellement. le --disable-web-sécurité n'est plus prise en charge dans les dernières versions de chrome.

Allow-Control-Allow-Origin: * - l'extension chrome a partiellement résolu le problème. Cela ne fonctionne que si votre demande utilise la méthode GET et qu'il n'y a pas d'en-tête HTTP personnalisé. Sinon, Chrome enverra une requête HTTP OPTIONS en tant que requête préalable au vol. Si le serveur ne prend pas en charge CORS, il répondra avec un code d'état HTTP 404. Le plugin ne peut pas modifier le code d'état HTTP de réponse. Chrome rejettera donc cette demande. Il n'y a aucun moyen pour le plugin Chrome de modifier le code d'état HTTP de réponse basé sur l'API d'extension Chrome actuelle. Et vous ne pouvez pas faire de redirection également pour une demande initié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 en développement, ce qui est totalement inutile.

Après des jours de lutte et de recherche, une solution me convient parfaitement: utiliser le corsproxy . Vous avez deux options ici: 1. utilisez [ https://cors-anywhere.herokuapp.com/] 2. installez corsproxy dans la boîte locale: npm install -g corsproxy

[Mis à jour le 23 juin 2018] Récemment, je développe une application SPA qui doit à nouveau utiliser corsproxy. Mais il semble qu'aucun des corsproxy sur le github ne puisse répondre à mes exigences.

  • besoin de l'exécuter à l'intérieur du pare-feu pour des raisons de sécurité. Je ne peux donc pas utiliser https://cors-anywhere.herokuapp.com/ .
  • Il doit prendre en charge https car Chrome bloquera la demande ajax sans https dans une page https.
  • J'ai besoin de courir sur nodejs. Je ne veux pas conserver une autre pile de langues.

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

  • C'est en code nodejs simple sans dépendances supplémentaires
  • Vous pouvez exécuter en mode http et https (en passant le numéro de port https en ligne de commande), pour exécuter https, vous devez générer cert et clé et les mettre dans le répertoire webroot.
  • Il sert également de serveur de fichiers statique
  • Il prend également en charge la demande OPTION avant le vol.

Pour démarrer le serveur CORSProxy (port http 8080): nœud static_server.js 8080

pour accéder au proxy: http: // host: 8080 / http: //www.somesite.com

Jianwu Chen
la source
Si vous allez dans cette mesure, vous pouvez toujours héberger un serveur Web localement ou à distance qui extrait le contenu de la page Web que vous souhaitez, puis définir les en-têtes CORS appropriés.
Coburn
J'ai déjà pensé à cette route. Mais cela nécessite un certain codage, en particulier dans mon cas, j'ai besoin d'appeler plusieurs services provenant de domaines différents. Je dois donc mapper différents modèles d'URL à différents domaines. C'est exactement ce que corsproxy a fait pour nous. Et cela fonctionne parfaitement.
Jianwu Chen
4
Pas vrai .. La manière mentionnée dans la réponse acceptée a fonctionné pour moi .. Comme il le mentionne, la commande Chrome 49 et suivantes 'chrome.exe --disable-web-security --user-data-dir' a fonctionné pour moi ..
Gaurang Patel
2
Chromium 53, --disable-web-security --user-data-dir ne fonctionnait pas pour moi
Dark Star1
4
Dans 53+, vous devez fournir un répertoire de données utilisateur unique différent de votre répertoire normal. Cela crée un nouveau profil pour l'environnement non sécurisé. --user-data-dir doit être égal à quelque chose, comme dans la réponse Olas ci-dessus. Si vous le voulez vraiment, vous POUVEZ le définir égal à votre dossier de profil utilisateur normal réel, mais cela est fortement déconseillé car il laisse votre profil normal ouvert à des attaques accidentelles si vous démarrez la navigation normale dans ce mode.
lassombra
45

Pour Windows ... créez un raccourci Chrome sur votre bureau.
Cliquez avec le bouton droit sur> propriétés> Raccourci
Modifier le chemin "cible":

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

(Remplacez le 'C: .... \ chrome.exe' par l'emplacement de votre chrome).

et voilà :)

molokoloco
la source
À partir d'aujourd'hui 27/08/20013, cela fonctionne pour moi, me permettant de faire Ajax sur mon propre hôte local.
molokoloco
obtenu "vous utilisez une balise de ligne de commande non prise en charge: --disable-web-security" avec Canary version 53
khoailang
4
@khoailang, vous pouvez toujours utiliser le commutateur. Cet avertissement fait partie de la guerre de Google contre l'insécurité (une bonne chose). De plus, à partir de la version 55+, vous devez également utiliser --user-data-dir = <un autre répertoire ici> afin que Google ne veuille pas que vous mélangiez des règles non sécurisées avec vos profils normaux.
lassombra
44

Essayez cette commande sur le terminal Mac-

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 Chrome. Remplacez l'URL de l'hôte local par celle de votre.

Vivek Sinha
la source
La plupart des réponses en ligne de commande ci-dessus n'ont fait aucune amélioration pour moi sur macOS. Cependant, ce post alfilatov.com/posts/run-chrome-without-cors et la ligne de commande ouverte ont fonctionné pour moi. C'est la même chose que la commande ci-dessus, donc voter contre.
Max MacLeod
40

Je trouve que la meilleure façon de le faire est de dupliquer un raccourci Chrome ou Chrome Canary sur votre bureau Windows. Renommez ce raccourci en "NO CORS" puis modifiez les propriétés de ce raccourci.

dans la cible, ajoutez --disable-web-security --user-data-dir="D:/Chrome"à la fin du chemin cible.

votre cible devrait ressembler à ceci:

Mise à jour: nouveaux drapeaux ajoutés.

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

entrez la description de l'image ici

étoxine
la source
Cela me donne juste 404 maintenant au lieu d'une erreur avant le vol
L1ghtk3ira
Une erreur 404 serait une erreur liée au serveur et non une erreur Google Chrome.
etoxin
2
@etoxin Cette réponse n'est plus valable dans la dernière version de chrome. Vous devez ajouter --disable-web-security --user-data-dir = "D: / Chrome"
Vignesh S
29

en utilisant la dernière version actuelle de Chrome (83.0.4103.61 (version officielle) (64 bits)), la seule façon de le faire fonctionner dans mon test était de démarrer Chrome en utilisant les drapeaux ci-dessous (modifiez le D: \ temp à votre convenance) . Cette solution démarrera Chrome comme un bac à sable pour les tests et n'affectera pas le profil principal de Chrome:

--disable-site-isolation-trial --disable-web-security --user-data-dir = "D: \ temp"

dans Windows, cliquez sur le bouton Démarrer puis copiez-collez ce qui suit:

chrome.exe  --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"
user2576266
la source
5
C'est la seule solution qui fonctionne pour moi. J'ai exécuté ceci chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"sur la runfenêtre sur les fenêtres 10. Merci beaucoup.
Sampath
HAIR PULLING ARGHGHGH - ne semble plus fonctionner
Daniel Sokolowski
1
L'ajout de --disable-site-isolation-trial m'a vraiment aidé dans mon cas, Chrome v 75.0, Selenium Web Driver, Java. Merci!
Nikolay Chernov
Si vous avez juste besoin de tester un site avec des cors, utilisez Safari, où il vous suffit d'activer et de désactiver les options, au lieu de lancer une autre instance du navigateur ou de tuer des instances: [ stackoverflow.com/a/12158217/922457 ]
Edenshaw
1
A travaillé pour moi sur Windows! Merci!
Jánosi-Borsos Róbert
20

Vous pouvez utiliser ce plugin Chrome appelé "Allow-Control-Allow-Origin: *" ... Il en fait un simple mort et fonctionne très bien. vérifiez-le ici: *

Extenstion Chrome

Mohamed Saleh
la source
4
Il définit le site Web "evil.com" comme une origine, semble suspect.
Suprido
5
Ne fonctionne plus à la date de ce commentaire. Je recommanderais simplement d'utiliser la route du drapeau.
NJDawson
19

Pour Selenium Webdriver, vous pouvez faire démarrer sélénium Chrome avec les arguments appropriés (ou «commutateurs») dans ce cas.

 @driver = Selenium::WebDriver.for(:Chrome, { 
       :detach => false,
       :switches => ["--disable-web-security"]
    })
mikelupo
la source
1
c'est deux tirets précédents pour désactiver la sécurité Web. il mon navigateur, il leur a fait ressembler à un tableau de bord looong.
mikelupo
J'ai écrit un petit article sur le chrome sans cors
Alex Filatov
14

Si vous utilisez Google Chrome sur Linux, la commande suivante fonctionne.

google-chrome  --disable-web-security
chhantyal
la source
13

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

Bruce
la source
5
Ce plugin s'est cassé dans mon navigateur et a commencé à casser toutes les choses XHR. Utiliser avec précaution.
etoxin
1
Ce plugin est supprimé de la boutique Chrome
Yipeekiyay
13

Ne fais pas ça! Vous ouvrez vos comptes aux attaques . Une fois que vous faites cela, tout site tiers peut commencer à émettre des demandes vers d'autres sites Web, les sites auxquels vous êtes connecté.

Exécutez 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

Puis en pointant votre navigateur vers

http://localhost:8000

Si vous trouvez que c'est trop lent, envisagez cette solution

Mise à jour

Les gens qui votent pour cette réponse devraient aller ici et voter aussi pour celle-ci pour être cohérent. Je ne sais pas pourquoi ma réponse est si dévaluée et la même réponse ici est la réponse la plus votée.

Vous êtes vous - même ouverture aux attaques. Chaque script tiers que vous incluez sur votre site à distance ou localement comme via npm peut désormais télécharger vos données ou voler vos informations d'identification. Vous faites quelque chose que vous n'avez pas besoin de faire. La solution suggérée n'est pas difficile, prend 30 secondes, ne vous laisse pas ouvert d'attaque. Pourquoi choisiriez-vous de vous rendre vulnérable alors que la meilleure chose à faire est si simple?

Dire aux gens de désactiver la sécurité, c'est comme dire à vos amis de laisser leur porte d'entrée déverrouillée et / ou une clé sous le paillasson. Bien sûr, les chances peuvent être faibles, mais si elles sont cambriolées, sans preuve d'entrée forcée, elles pourraient avoir du mal à obtenir une assurance. De même, si vous désactivez la sécurité, vous ne faites que désactiver sécurité . Il est irresponsable de le faire lorsque vous pouvez résoudre le problème si simplement sans désactiver la sécurité. Je serais surpris si vous ne pouviez pas être renvoyé contre certaines entreprises pour avoir désactivé la sécurité.

gman
la source
9
Cela n'ouvrirait pas "votre machine" aux attaques. Un code JavaScript malveillant ne pourrait pas faire grand-chose sur la machine cliente elle-même. Cependant, vous autorisez un code JavaScript malveillant à manipuler potentiellement vos comptes sur d'autres sites Web (facebook / administrations / banques / ...). Ce n'est certainement pas moins dangereux, mais c'est complètement différent.
dim
2
Pourtant, les utilisateurs peuvent avoir besoin de le faire. Le problème ne s'exécute pas sur un serveur. Le problème teste CORS avant de le mettre sur votre serveur d'acceptation / production, où cette modification n'est pas nécessaire. La modification du fichier hosts ne fonctionnerait pas non plus.
Jeff Huijsmans
Vous ne pouvez pas tester CORS sans serveur car CORS est une technologie côté serveur. Afin de tester CORS, vous devez configurer un serveur pour envoyer les en-têtes CORS. Il y a 2 choses à tester (1) le serveur envoie-t-il les en-têtes (2) si le serveur envoie les en-têtes pouvez-vous utiliser la ressource dans le navigateur. (1) et (2) nécessitent un serveur. Si vous ne voulez faire que 2, vous pouvez utiliser ce serveur, mais vous devrez toujours tester (2) avec le serveur qui servira à votre site de production.
gman
11

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

cliquez simplement sur l'icône de l'extension pour activer ou désactiver le partage entre les ressources comme vous le souhaitez

Peter Wilson
la source
Le lien est mort.
Vitaly Zdanevich
Ce n'est pas. Et oui ça marche. Mais nous sommes ici car nous savons maintenant ce que signifie une commande, alors utilisez les solutions ci-dessus avant cela!
Jánosi-Borsos Róbert
@ Jánosi-BorsosRóbert qui font partie de votre "nous", et comment votre connaissance du sens d'une commande peut-elle vous amener ici? FYI: Votre commande est imprécise, et je n'ai pas obéi;)
Superole
10

POUR UTILISATEUR MAC UNIQUEMENT

open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/someFolderName" --disable-web-security
Saurabh Chandra Patel
la source
comment annuler ce changement @saurab
Mohasin Ali
@MohasinAli ferme toutes les fenêtres de chrome et l'exécute comme d'habitude. Cela affecte uniquement l'instance que vous avez exécutée avec cet argument. Si vous l'exécutez à nouveau sans aucun argument, cette modification n'est pas appliquée.
Jeff Huijsmans
9
chromium-browser --disable-web-security --user-data-dir=~/ChromeUserData/
MechaCode
la source
7

Sur Windows 10, ce qui suit fonctionnera.

<<path>>\chrome.exe --allow-file-access-from-files --allow-file-access --allow-cross-origin-auth-prompt
ItsAllABadJoke
la source
Je suis surpris que votre réponse ait été rejetée. Cela a très bien fonctionné pour moi sur les fichiers locaux avec la dernière version de Chrome.
Waruyama
@CHANist: C'est peut-être la raison pour laquelle l'OP a dit: "Sous Windows 10 " ...?
Lawrence Dol
7

Suite à la réponse d'Ola Karlsson, la meilleure façon serait en effet d'ouvrir le Chrome dangereux dans une session différente. De cette façon, vous n'avez pas à vous soucier de la fermeture de tous les onglets actuellement ouverts et vous pouvez également continuer à surfer sur le Web en toute sécurité avec la session Chrome d'origine.

Ces fichiers batch devraient simplement fonctionner pour vous sous Windows.

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

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

Celui-ci est pour Chrome Canary . Canary_CORS.bat

start "" "c:\Users\%USERNAME%\AppData\Local\Google\Chrome SxS\Application\chrome.exe" --user-data-dir="c:/_canary_dev" --disable-web-security
guya
la source
Il s'agit d'une utilisation inutile d'un fichier de commandes. Un raccourci serait beaucoup mieux pour cela. Mettez simplement tout après la première paire de guillemets dans la cible de raccourci.
lassombra
Ça n'a pas vraiment d'importance. Pourtant, dans un lot, vous pouvez faire plus de choses comme la suppression du répertoire de données utilisateur après avoir fermé le navigateur, par exemple.
guya
Certes, l'ajout d'un comportement en dehors du lancement serait utile, mais pour la plupart des gens qui en ont besoin longuement, avoir un répertoire utilisateur persistant est utile (par exemple avec les extensions installées)
lassombra
7

Sous Linux-Ubuntu, pour exécuter simultanément une session normale et une session non sécurisée, exécutez la commande suivante:

google-chrome  --user-data-dir=/tmp --disable-web-security
Santiago M. Quintero
la source
6

pour les utilisateurs de mac:

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

et avant Chrome 48, vous pouviez simplement utiliser:

open -a "Google Chrome" --args --disable-web-security
Braian Mellor
la source
Merci. Cela fonctionne sur le dernier Chrome 73 qui comprenait la nouvelle politique de sécurité CORB.
StuyvesantBlue
6

Pour OSX, exécutez la commande suivante à partir du terminal:

open -na Google\ Chrome --args --disable-web-security --user-data-dir=$HOME/profile-folder-name

Cela va démarrer une nouvelle instance de Google Chrome avec un avertissement en haut.

malais
la source
5

c'est une cible en constante évolution .... aujourd'hui, je devais ajouter un autre indicateur pour le faire fonctionner: --disable-site-isolation-trials

OS X: open /Applications/Google\ Chrome.app --args --user-data-dir="/var/tmp/Chrome_dev_2" --disable-web-security --disable-site-isolation-trials

denodster
la source
3

Pour les fenêtres:

(sous Windows 8.1, chrome 44.0 )

Tout d'abord, fermez Google Chrome.

Ensuite, ouvrez l'invite de commande et accédez au dossier où se trouve «chrome.exe».

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

Donc , type I: cd C:\Program Files (x86)\Google\Chrome\Application)

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

une nouvelle fenêtre de chrome s'ouvrira.

AFA
la source
3

Utilisé ci-dessous la commande dans Ubuntu pour démarrer Chrome (désactiver la même politique d'origine et ouvrir Chrome en mode détaché):

nohup google-chrome --disable-web-security --user-data-dir='/tmp' &
Ashutosh Tripathy
la source
3

Sous Windows:

1) Créez un nouveau raccourci:

Créer un nouveau raccourci

2) Collez le chemin suivant:

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

Collez le chemin

3) Dans la page suivante, tapez:

Unsafe Chrome.exe

entrez la description de l'image ici

Maintenant, vous avez un chrome dangereux sur le bureau à utiliser pour le débogage des applications CORS. J'espère que cette réponse graphique aidera certaines personnes!

Shadi Namrouti
la source
1

Essayez d'accéder à cette page et de désactiver la stratégie de sécurité du domaine pour le domaine de votre site Web.

chrome://net-internals/#hsts
Rahul Malu
la source
1
S'il vous plaît, expliquez. Sur cette page en bas, je vois Input a domain name to delete its dynamic domain security policies (HSTS and Expect-CT). (You cannot delete preloaded entries.):.
Vitaly Zdanevich
Quelqu'un a-t-il résolu cela?
Yipeekiyay
@RahulMalu avez-vous réussi à faire en sorte que cela fonctionne?
Ben Racicot