Nonaktifkan kebijakan asal yang sama di Chrome


1572

Apakah ada cara untuk menonaktifkan kebijakan asal-sama di browser Google Chrome ?


1
Lihat juga peter.sh/experiments/chromium-command-line-switches , saya tidak yakin dengan keasliannya, tetapi tampaknya itu adalah kumpulan yang dihasilkan oleh proses otomatis
CSSian

1
tautan chromium.org ke peter.shhalaman, jadi harus cukup sah.
Benjineer

2
Perhatikan bahwa menonaktifkan SOP, bahkan ketika hanya digunakan untuk pengembangan, berbahaya. Ketika Anda memulai browser Anda dengan cara ini, Anda mungkin tidak hanya akan membuka aplikasi Anda, tetapi juga memeriksa email Anda, baca SO ... Mempertimbangkan menggunakan alternatif yang lebih baik, misalnya proksi web, untuk menyelesaikan masalah ini. Misalnya melalui proxrox: github.com/bripkens/proxrox
BenR

29
Sejak versi 49, gunakan opsi ini--disable-web-security --user-data-dir
vanduc1102

3
Bagi siapa pun yang mencari saran tentang cara melakukan ini di lingkungan pengembang menggunakan server run grunt lihat ini: gist.github.com/Vp3n/5340891
GrayedFox

Jawaban:


1038

Tutup chrome (atau chromium) dan mulai kembali dengan --disable-web-securityargumen. Saya baru saja menguji ini dan memverifikasi bahwa saya dapat mengakses konten iframe dengan src = "http://google.com" disematkan pada halaman yang disajikan dari "localhost" (diuji di bawah chromium 5 / ubuntu). Bagi saya perintah yang tepat adalah:

Catatan: Bunuh semua instance chrome sebelum menjalankan perintah

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

Browser akan memperingatkan Anda bahwa "Anda menggunakan baris perintah yang tidak didukung" saat dibuka pertama kali, yang dapat Anda abaikan.

Dari sumber kromium:

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

Sebelum Chrome 48, Anda bisa menggunakan:

chromium-browser --disable-web-security

115
Bagaimana melakukan ini di OS X?
Landon Kuhn

14
@ landon9720 lihat jawabannya dengan ectype .
ANeves

8
@Berty Cukup tutup chrome dan buka tanpa tag. Chrome hanya akan berada dalam mode itu jika dibuka dengan tag itu
Nick

84
@ landon9720 Tutup Chrome, terminal terbuka, ketikopen /Applications/Google\ Chrome.app --args --disable-web-security
Seanonymous

17
Di Chrome 48 dan 49 kita harus menambahkan --user-data-dirjuga.
Jacob Lauritzen

1070

Ya. Untuk OSX, buka Terminal dan jalankan:

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

--user-data-dir diperlukan di Chrome 49+ di OSX

Untuk Linux dijalankan:

$ google-chrome --disable-web-security

Juga jika Anda mencoba mengakses file lokal untuk keperluan dev seperti AJAX atau JSON, Anda dapat menggunakan flag ini juga.

-–allow-file-access-from-files

Untuk Windows masuk ke command prompt dan masuk ke folder tempat Chrome.exe dan ketik

chrome.exe --disable-web-security

Itu harus menonaktifkan kebijakan asal yang sama dan memungkinkan Anda untuk mengakses file lokal.

Pembaruan: Untuk Chrome 22+ Anda akan disajikan dengan pesan kesalahan yang mengatakan:

Anda menggunakan flag baris perintah yang tidak didukung: --disable-web-security. Stabilitas dan keamanan akan menderita.

Namun Anda bisa mengabaikan pesan itu sambil mengembangkan.


7
Baru saja mencoba ini di pc (chrome 29) dan saya masih mendapatkan Origin *** yang indah ini tidak diizinkan oleh Access ...
Sam

23
@ Sam Pastikan Anda telah menutup semua proses chrome, lalu coba lagi. Chrome akan mengeluarkan tajuk peringatan jika Anda melakukannya dengan benar: "Anda menggunakan panji baris perintah yang tidak didukung: --disable-web-security. Stabilitas dan keamanan akan terganggu"
Morten Haraldsen

2
Apakah ada cara untuk mencegah pesan kesalahan muncul juga? Saya menggunakan bendera ini di papan dinding digital tanpa keyboard atau mouse.
Bart van Heukelom

64
Dan ternyata sekarang --disable-web-securitytidak berfungsi kecuali Anda juga secara eksplisit memberi --user-data-dir. yaitu OSX /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-web-security --user-data-dir=~/ChromeUserData/.
WiseOldDuck

20
Anda tidak harus menutup semua proses Chrome terlebih dahulu. Anda bisa menggunakannya open -n. Cukup jalankan open -n -a Google\ Chrome --args --disable-web-security --user-data-dir=/tmp/chrome. Ini akan membuka instance aplikasi Chrome kedua di mac Anda, dan Anda dapat menggunakannya berdampingan.
The Pellmeister

520

Untuk pengguna Windows:

Masalah dengan solusi yang diterima di sini, menurut saya adalah jika Anda sudah membuka Chrome dan mencoba menjalankannya, itu tidak akan berhasil.

Namun, ketika meneliti ini, saya menemukan posting tentang Pengguna Super, Apakah mungkin menjalankan Chrome dengan dan tanpa keamanan web pada saat yang sama? .

Pada dasarnya, dengan menjalankan perintah berikut (atau membuat pintasan dengannya dan membuka Chrome melalui itu)

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

Anda dapat membuka instance "tidak aman" baru dari Chrome pada saat yang sama saat Anda menjaga instance browser "aman" lainnya tetap terbuka dan berfungsi seperti biasa. Penting : hapus / hapus C:/Chrome dev sessionfolder setiap kali Anda membuka jendela karena kedua kalinya --disable-web-securitytidak akan berfungsi. Jadi, Anda tidak dapat menyimpan perubahan dan kemudian membukanya lagi sebagai contoh Chrome yang tidak aman kedua --disable-web-security.


17
keren terima kasih. berkat ini, saya dapat meluncurkan halaman web sebagai aplikasi independen"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
Persis apa yang saya butuhkan ketika mencoba melakukan pengembangan terhadap API pada mesin lokal saya.
generalopinion

4
Ini berhasil. Itu juga meninggalkan contoh normal chrome saya dengan keamanan dihidupkan dan berfungsi normal. Hanya catatan tambahan ketika Chrome berfungsi, Chrome akan memberi tahu Anda bahwa "Stabilitas dan Keamanan akan terganggu".
etoxin

1
Bagaimana saya bisa melakukan ini di Mac? open -a Google\ Chrome --args --disable-web-security -–allow-file-access-from-files --user-data-dir="/Users/myuser/temp/chromeData"Sudah mencoba menggunakan , itu hanya membuat fokus jendela krom yang ada, tidak ada yang lain?
user3648895

17
Perintah ini berfungsi di OSX dengan memulai instance kedua: open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/chrome_dev_session" --disable-web-security (Anda mungkin perlu membuat folder temp dulu)
chilltemp

161

Untuk Windows :

  1. Buka menu mulai
  2. Ketik windows+ Ratau buka "Run"
  3. Jalankan perintah berikut:

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

Untuk Mac :

  1. Pergi ke Terminal
  2. Jalankan perintah berikut:

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

Peramban chrome yang dinonaktifkan keamanan web yang baru akan terbuka dengan pesan berikut:

masukkan deskripsi gambar di sini


7
@ downvoters harap sebutkan alasan untuk downvote karena tidak ada gunanya downvote dalam jawaban
GSB

1
Bekerja dengan baik untuk saya di Windows 10, tidak perlu menutup instance Chrome lainnya.
Nick M

Ini bekerja pada windows 10. Saya melihatnya di tempat lain tetapi ia mengatakan untuk menjalankannya pada command line alih-alih windows Run.
chidimo

Ini berfungsi dengan baik, Bagaimana saya bisa menggunakannya untuk IE, Edge!
Jason Brody

ini bekerja dengan baik. Saya telah menderita masalah CORS ini selama berjam-jam dan menemukan ini.
Achintha

78

Untuk pengguna windows dengan Versi Chrome 60.0.3112.78 (hari solusi diuji dan bekerja) dan setidaknya hingga hari ini 19.01.2019 (ver. 71.0.3578.98) . Anda tidak perlu menutup instance chrome apa pun.

  1. Buat pintasan di desktop Anda
  2. Klik kanan pada pintasan dan klik Properti
  3. Edit properti Target
  4. Setel ke "C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe" --disable-web-security --user-data-dir = "C: / ChromeDevSession"
  5. Mulai chrome dan abaikan pesan yang mengatakan --disable-web-security tidak didukung!

WASPADALAH UNTUK TIDAK MENGGUNAKAN INSTANSI BROWSER TERTENTU INI UNTUK MENGEMBANGKAN KARENA ANDA DAPAT MENJADI KERAS DENGAN ITU!


Bekerja seperti pesona. Saya tidak percaya Chrome tidak mengizinkan pengembang untuk menonaktifkan ini tanpa memulai sesi baru. Setidaknya mereka punya cara.
FearlessFuture

dan apakah Anda masih dapat menggunakan debugging chrome pada kode sumber Anda?
Righto

baru saja diuji, Anda masih dapat menggunakan alat dev dalam mode ini.
KuN

Solusi ini masih berfungsi pada versi chrome 71 Terima kasih banyak!
Motoman

Bekerja dengan 72.0.3626.109. Banyak membantu!
Pavel Molchanov

76

EDIT 3: Tampaknya ekstensi tidak ada lagi ... Biasanya untuk berkeliling CORS hari ini saya menyiapkan versi Chrome lain dengan direktori terpisah atau saya menggunakan Firefox dengan https://addons.mozilla.org/en-US/ firefox / addon / cors -where / sebagai gantinya.

EDIT 2: Saya tidak bisa lagi membuatnya bekerja secara konsisten.

EDIT: Saya mencoba menggunakan hari yang lain untuk proyek lain dan berhenti bekerja. Menghapus instalasi dan menginstal ulang ekstensi memperbaikinya (untuk mengatur ulang default).

Jawaban asli:

Saya tidak ingin memulai ulang Chrome dan menonaktifkan keamanan web saya (karena saya menjelajah sambil mengembangkan) dan menemukan ekstensi Chrome ini.

Chrome Web Store Allow-Control-Allow-Origin: *
(https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=id)

Pada dasarnya ini adalah sakelar toggle kecil untuk menghidupkan dan mematikan cek Allow-Access-Origin-Control. Bekerja dengan baik untuk apa yang saya lakukan.


1
bagaimana saya mencapai dan mengintegrasikan dengan ekstensi saya karena ekstensi saya perlu mengakses domain silang. Saya tidak bisa memaksa pengguna untuk membuka browser dengan menonaktifkan-web-security
codebased

1
Ekstensi ini tidak akan berfungsi untuk file lokal, sayangnya. Tetap berpegang pada --disable-web-securitysaklar dalam hal itu.
bryc

2
@ Bryc Ini tidak benar-benar dimaksudkan. Namun pertimbangkan bahwa Anda dapat menggunakan --allow-file-access-from-filesalih-alih menonaktifkan semua keamanan web.
Coburn

1
Peringatan! Beberapa situs tidak akan membiarkan Anda masuk dengan ekstensi ini diaktifkan! Konsol Firebase, misalnya.
campsjos

1
"Ekstensi tidak lagi ada" dapatkah Anda menghapus jawaban Anda atau paling tidak membuat Edit 3 di bagian atas dicetak tebal
Michael Freidgeim

48

Tampaknya tidak ada solusi di atas yang benar-benar berfungsi. The --disable-web-keamanan tidak lagi didukung dalam versi krom baru-baru ini.

Allow-Control-Allow-Origin: * - ekstensi chrome menyelesaikan sebagian masalahnya. Ini hanya berfungsi jika permintaan Anda menggunakan metode GET dan tidak ada HTTP Header khusus. Jika tidak, chrome akan mengirim permintaan HTTP OPSI sebagai permintaan pra-penerbangan. Jika server tidak mendukung CORS, itu akan merespons dengan 404 kode status HTTP. Plugin tidak dapat mengubah kode status HTTP respons. Jadi chrome akan menolak permintaan ini. Tidak ada cara bagi plugin chrome untuk mengubah respons kode status HTTP berdasarkan API ekstensi chrome saat ini. Dan Anda tidak dapat melakukan pengalihan juga untuk permintaan yang diprakarsai XHR.

Tidak yakin mengapa Chrome membuat hidup pengembang sangat sulit. Ini memblokir semua cara yang mungkin untuk menonaktifkan pemeriksaan keamanan XSS bahkan untuk penggunaan pengembangan yang sama sekali tidak perlu.

Setelah beberapa hari berjuang dan meneliti, satu solusi bekerja dengan baik untuk saya: menggunakan corsproxy . Anda memiliki dua opsi di sini: 1. gunakan [ https://cors-anywhere.herokuapp.com/] 2. instal corsproxy di kotak lokal: npm install -g corsproxy

[Diperbarui pada 23 Juni 2018] Baru-baru ini saya mengembangkan aplikasi SPA yang perlu menggunakan corsproxy lagi. Tapi sepertinya tidak ada corsproxy di github yang dapat memenuhi kebutuhan saya.

  • perlu dijalankan di dalam firewall untuk alasan keamanan. Jadi saya tidak bisa menggunakan https://cors-anywhere.herokuapp.com/ .
  • Itu harus mendukung https karena chrome akan memblokir permintaan ajax no-https di halaman https.
  • Saya perlu menjalankan pada nodejs. Saya tidak ingin mempertahankan tumpukan bahasa lain.

Jadi saya memutuskan untuk mengembangkan versi saya sendiri corsproxy dengan nodejs. Sebenarnya sangat sederhana. Saya telah menerbitkannya sebagai intisari pada github. Inilah inti kode sumber: https://gist.github.com/jianwu/8e76eaec95d9b1300c59596fbfc21b10

  • Itu dalam kode nodejs sederhana tanpa dependensi tambahan
  • Anda dapat menjalankan dalam mode http dan https (dengan melewati nomor port https di baris perintah), untuk menjalankan https, Anda perlu membuat sertifikat dan kunci dan meletakkannya di direktori webroot.
  • Ini juga berfungsi sebagai server file statis
  • Ini mendukung permintaan OPSI pra-penerbangan juga.

Untuk memulai server CORSProxy (http port 8080): node static_server.js 8080

untuk mengakses proxy: http: // host: 8080 / http: //www.somesite.com


Jika Anda akan pergi sejauh itu, Anda selalu bisa hanya meng-host server web secara lokal atau jarak jauh yang menarik konten dari halaman web yang Anda inginkan dan kemudian mengatur header CORS yang tepat pada itu.
Coburn

Saya sudah memikirkan rute ini sebelumnya. Tapi ini perlu beberapa pengkodean, terutama dalam kasus saya, saya perlu memanggil beberapa layanan yang berasal dari domain yang berbeda. Jadi saya harus memetakan pola URL yang berbeda ke domain yang berbeda. Ini persis apa yang telah dilakukan corsproxy untuk kita. Dan itu bekerja dengan sempurna.
Jianwu Chen

4
Tidak benar .. Cara yang disebutkan dalam jawaban yang diterima bekerja untuk saya .. Seperti yang disebutkan, Chrome 49 dan seterusnya perintah 'chrome.exe --disable-web-security --user-data-dir' bekerja untuk saya ..
Gaurang Patel

2
Chromium 53, --disable-web-security --user-data-dir tidak berfungsi untuk saya
Dark Star1

4
Di 53+ Anda harus menyediakan direktori data pengguna unik yang sebenarnya berbeda dari direktori normal Anda. Ini menciptakan profil baru untuk lingkungan yang tidak aman. --user-data-dir harus diset sama dengan sesuatu, seperti pada Olas jawaban di atas. Jika Anda benar-benar ingin, Anda DAPAT mengaturnya sama dengan folder profil pengguna normal Anda yang sebenarnya, tetapi ini sangat tidak disarankan karena membiarkan profil normal Anda terbuka untuk serangan tidak disengaja jika Anda memulai penelusuran normal saat berada dalam mode itu.
lassombra

45

Untuk Windows ... buat pintasan Chrome di desktop Anda.
Klik kanan> properti>
Edit jalan pintas "target":

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

(Ubah 'C: .... \ chrome.exe' ke tempat krom Anda berada).

et voilà :)


Pada hari ini 08/27/20013 itu berfungsi untuk saya, memungkinkan saya untuk melakukan Ajax di localhost saya sendiri.
molokoloco

mendapat "Anda menggunakan tag baris perintah yang tidak didukung: --disable-web-security" dengan Canary versi 53
khoailang

4
@ khoailang Anda masih dapat menggunakan sakelar. Peringatan itu adalah bagian dari perang Google terhadap ketidakamanan (hal yang baik). Selain itu, pada versi 55+ Anda juga perlu menggunakan --user-data-dir = <direktori lain di sini> sehingga Google tidak ingin Anda mencampur aturan tidak aman dengan profil normal Anda.
lassombra

44

Coba perintah ini pada terminal Mac-

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

Itu membuka contoh lain dari chrome dengan keamanan dinonaktifkan dan tidak ada masalah CORS lagi. Selain itu, Anda tidak perlu lagi menutup instance chrome lainnya. Ubah URL host lokal ke URL Anda.


Sebagian besar jawaban baris perintah di atas tidak membuat perbaikan bagi saya di macOS. Namun postingan ini alfilatov.com/posts/run-chrome-without-cors dan baris perintah terbuka bekerja untuk saya. Itu sama dengan perintah di atas jadi voting.
Max MacLeod

40

Saya menemukan cara terbaik untuk melakukannya adalah menduplikasi shortcut Chrome atau Canary Chrome di desktop windows Anda. Ubah nama pintasan ini menjadi "NO CORS" lalu edit properti pintasan itu.

di target tambahkan --disable-web-security --user-data-dir="D:/Chrome"ke akhir jalur target.

target Anda akan terlihat seperti ini:

Pembaruan: Bendera Baru ditambahkan.

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

masukkan deskripsi gambar di sini


Ini hanya memberi saya 404 sekarang alih-alih kesalahan pra-penerbangan
L1ghtk3ira

Kesalahan 404 adalah kesalahan terkait server dan bukan kesalahan Google Chrome.
etoxin

2
@etoxin Jawaban ini tidak lagi valid dalam versi terbaru chrome. Anda harus menambahkan --disable-web-security --user-data-dir = "D: / Chrome"
Vignesh S

29

menggunakan versi chrome terbaru saat ini (83.0.4103.61 (Build Resmi) (64-bit)), satu-satunya cara untuk membuatnya bekerja dalam pengujian saya adalah untuk memulai chrome menggunakan flag di bawah ini (ubah D: \ temp sesuai keinginan Anda) . Solusi ini akan memulai chrome sebagai kotak pasir untuk pengujian dan itu tidak akan mempengaruhi profil chrome utama:

--disable-situs-isolasi-percobaan --disable-web-security --user-data-dir = "D: \ temp"

di windows, klik tombol mulai kemudian salin tempel di bawah ini:

chrome.exe  --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"

5
Ini adalah satu-satunya solusi yang berfungsi untuk saya. Saya telah menjalankan ini chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"di runjendela di windows 10. Terima kasih banyak.
Sampath

HAIR PULLING ARGHGHGH - sepertinya tidak berfungsi lagi
Daniel Sokolowski

1
Menambahkan --disable-site-isolation-trial sangat membantu saya dalam kasus saya, Chrome v 75.0, Selenium Web Driver, Java. Terima kasih!
Nikolay Chernov

Jika Anda hanya perlu menguji situs dengan cors, gunakan Safari, tempat Anda hanya perlu menghidupkan dan mematikan opsi, alih-alih meluncurkan instance lain dari browser atau mematikan instance: [ stackoverflow.com/a/12158217/922457 ]
Edenshaw

1
Bekerja untuk saya di windows! Terima kasih!
Jánosi-Borsos Róbert

20

Anda dapat menggunakan plugin chrome ini yang disebut "Allow-Control-Allow-Origin: *" ... Ini membuatnya menjadi sangat sederhana dan bekerja dengan sangat baik. periksa di sini: *

Ekstensi Chrome


4
Ini menetapkan situs web "evil.com" sebagai asal, terlihat mencurigakan.
Suprido

5
Tidak lagi berfungsi sesuai dengan tanggal komentar ini. Sarankan hanya menggunakan rute bendera.
NJDawson

19

Untuk Selenium Webdriver, Anda dapat meminta selenium memulai Chrome dengan argumen yang sesuai (atau "sakelar") dalam hal ini.

 @driver = Selenium::WebDriver.for(:Chrome, { 
       :detach => false,
       :switches => ["--disable-web-security"]
    })

1
itulah dua tanda sebelumnya untuk menonaktifkan-keamanan web. itu browser saya itu membuat mereka terlihat seperti satu dasbor panjang.
mikelupo

Saya telah menulis posting kecil tentang chrome tanpa kors
Alex Filatov

14

Jika Anda menggunakan Google Chrome di Linux, perintah berikut berfungsi.

google-chrome  --disable-web-security


13

Jangan lakukan ini! Anda membuka akun untuk serangan . Setelah Anda melakukan ini, situs pihak ketiga mana pun dapat mulai mengeluarkan permintaan ke situs web lain, situs tempat Anda masuk.

Alih-alih jalankan server lokal. Ini semudah membuka shell / terminal / commandline dan mengetik

cd path/to/files
python -m SimpleHTTPServer

Lalu arahkan browser Anda ke

http://localhost:8000

Jika Anda merasa terlalu lambat, pertimbangkan solusi ini

Memperbarui

Orang-orang yang menurunkan jawaban ini harus pergi ke sini dan memilih yang satu ini juga agar konsisten. Tidak tahu mengapa jawaban saya sangat rendah dan jawaban yang sama di sini adalah jawaban terpilih.

Anda sedang membuka diri untuk serangan. Setiap skrip pihak ketiga yang Anda sertakan di situs Anda dari jarak jauh atau lokal seperti melalui npm sekarang dapat mengunggah data Anda atau mencuri kredensial Anda. Anda melakukan sesuatu yang tidak perlu Anda lakukan. Solusi yang disarankan tidak sulit, butuh 30 detik, tidak membuat Anda serangan terbuka. Mengapa Anda memilih untuk membuat diri Anda rentan ketika hal yang lebih baik untuk dilakukan begitu sederhana?

Memberitahu orang-orang untuk menonaktifkan keamanan adalah seperti memberi tahu teman-teman Anda untuk membiarkan pintu depan mereka tidak terkunci dan / atau kunci di bawah keset. Tentu peluangnya mungkin rendah tetapi jika mereka dicuri, tanpa bukti masuk paksa mereka mungkin mengalami kesulitan mengumpulkan asuransi. Demikian pula jika Anda menonaktifkan keamanan Anda hanya melakukan itu menonaktifkan keamanan . Tidak bertanggung jawab untuk melakukan ini saat Anda dapat menyelesaikan masalah dengan mudah tanpa menonaktifkan keamanan. Saya akan terkejut jika Anda tidak dapat dipecat di beberapa perusahaan karena menonaktifkan keamanan.


9
Ini tidak akan membuka "mesin Anda" untuk serangan. Kode JavaScript berbahaya tidak akan bisa berbuat banyak pada mesin klien itu sendiri. Anda, bagaimanapun, akan memungkinkan kode JavaScript berbahaya berpotensi memanipulasi akun Anda di situs web lain (facebook / administrasi / bank / ...). Ini tentu saja tidak kurang berbahaya, tetapi sama sekali berbeda.
redup



2
Namun, pengguna mungkin perlu melakukan ini. Masalahnya adalah tidak menjalankan server. Masalahnya adalah menguji CORS sebelum Anda meletakkannya di server penerimaan / produksi Anda, di mana perubahan ini tidak diperlukan. Memodifikasi file host tidak akan berfungsi.
Jeff Huijsmans

Anda tidak dapat menguji CORS tanpa server karena CORS adalah teknologi sisi server. Untuk menguji CORS, Anda perlu mengatur server untuk mengirim header CORS. Ada 2 hal untuk diuji (1) apakah server mengirim header (2) jika server mengirim header dapat Anda gunakan sumber daya di browser. Baik (1) dan (2) membutuhkan server. Jika Anda hanya ingin melakukan 2, Anda dapat menggunakan server ini tetapi Anda masih perlu menguji (2) dengan server apa pun yang akan mem-server situs produksi Anda.
GM

11

Anda cukup menggunakan ekstensi chrome ini Allow-Control-Allow-Origin

cukup klik ikon ekstensi untuk mengaktifkan atau menonaktifkan berbagi lintas sumber daya seperti yang Anda inginkan


Tautannya sudah mati.
Vitaly Zdanevich

Bukan itu. Dan ya itu berhasil. Tapi kita di sini karena kita sekarang apa artinya perintah jadi gunakan solusi di atas sebelum ini!
Jánosi-Borsos Róbert

@ Jánosi-BorsosRóbert yang termasuk dalam "kami", dan bagaimana pengetahuan Anda tentang makna suatu perintah dapat membawa Anda ke sini? FYI: Perintah Anda tidak tepat, dan saya tidak patuh;)
Superole

10

HANYA UNTUK PENGGUNA MAC

open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/someFolderName" --disable-web-security

cara mengembalikan perubahan ini @saurab
Mohasin Ali

@MohasinAli tutup semua jendela chrome dan jalankan seperti biasa. Ini hanya memengaruhi instance Anda berlari dengan argumen ini. Jika Anda menjalankannya lagi tanpa argumen apa pun, perubahan ini tidak diterapkan.
Jeff Huijsmans

9
chromium-browser --disable-web-security --user-data-dir=~/ChromeUserData/

7

Pada Windows 10, yang berikut ini akan berfungsi.

<<path>>\chrome.exe --allow-file-access-from-files --allow-file-access --allow-cross-origin-auth-prompt

Saya terkejut bahwa jawaban Anda diturunkan. Ini bekerja sangat baik untuk saya pada file lokal dengan versi Chrome terbaru.
Waruyama

@CHANist: Itulah mengapa OP mengatakan, "Pada Windows 10 " ...?
Lawrence Dol

7

Mengikuti jawaban Ola Karlsson, memang cara terbaik adalah membuka Chrome yang tidak aman di sesi yang berbeda. Dengan cara ini Anda tidak perlu khawatir tentang menutup semua tab yang saat ini dibuka, dan juga dapat terus menjelajahi web dengan aman dengan sesi Chrome asli.

File batch ini seharusnya hanya berfungsi untuk Anda di Windows.

Masukkan ke dalam file Chrome_CORS.bat agar mudah digunakan

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

Yang ini untuk 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

Ini adalah penggunaan file batch yang tidak berguna. Jalan pintas akan jauh lebih baik untuk ini. Masukkan semuanya setelah pasangan kutipan pertama ke dalam target pintasan.
lassombra

Itu tidak masalah. Namun dalam satu batch Anda dapat melakukan lebih banyak hal seperti menghapus dir-pengguna-data setelah Anda menutup browser, misalnya.
guya

Benar, menambahkan perilaku di luar hanya dari peluncuran akan berguna, tetapi bagi kebanyakan orang yang membutuhkan ini secara panjang lebar, memiliki direktori pengguna yang persisten sangat membantu (misalnya dengan ekstensi yang diinstal)
lassombra

7

Di Linux-Ubuntu, untuk menjalankan secara bersamaan sesi normal dan sesi tidak aman jalankan perintah berikut:

google-chrome  --user-data-dir=/tmp --disable-web-security

6

untuk pengguna mac:

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

dan sebelum Chrome 48, Anda bisa menggunakan:

open -a "Google Chrome" --args --disable-web-security

Terima kasih. Ini berfungsi pada Chrome 73 terbaru yang termasuk kebijakan keamanan CORB yang baru.
StuyvesantBlue


6

Untuk OSX, jalankan perintah berikut dari terminal:

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

Ini akan memulai instance baru Google Chrome dengan peringatan di atas.


5

ini adalah target yang selalu bergerak .... hari ini saya perlu menambahkan bendera lain untuk membuatnya berfungsi: --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


3

Untuk Windows:

(menggunakan windows 8.1, chrome 44.0 )

Pertama, tutup google chrome.

Kemudian, buka command prompt dan buka folder tempat 'chrome.exe'.

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

Jadi saya mengetik cd C:\Program Files (x86)\Google\Chrome\Application:)

sekarang ketik: chrome.exe --disable-web-security

jendela baru chrome akan terbuka.


3

Digunakan perintah di bawah ini di Ubuntu untuk memulai chrome (nonaktifkan kebijakan asal yang sama dan buka chrome dalam mode terpisah):

nohup google-chrome --disable-web-security --user-data-dir='/tmp' &

3

Di Windows:

1) Buat pintasan baru:

Buat pintasan baru

2) Tempel jalur berikut:

"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"

Tempel path

3) Pada jenis halaman berikutnya:

Unsafe Chrome.exe

masukkan deskripsi gambar di sini

Sekarang Anda memiliki chrome yang tidak aman di desktop untuk digunakan untuk debugging aplikasi CORS. Semoga jawaban grafis ini membantu beberapa orang!


1

Coba buka halaman ini dan nonaktifkan kebijakan keamanan domain untuk domain situs web Anda.

chrome://net-internals/#hsts

1
Tolong jelaskan. Di halaman ini di bagian bawah saya melihat Input a domain name to delete its dynamic domain security policies (HSTS and Expect-CT). (You cannot delete preloaded entries.):.
Vitaly Zdanevich

Adakah yang memecahkan ini?
Yipeekiyay

@RahulMalu apakah Anda berhasil melakukannya?
Ben Racicot
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.