Apakah ada cara untuk menonaktifkan kebijakan asal-sama di browser Google Chrome ?
javascript
ajax
google-chrome
Landon Kuhn
sumber
sumber
peter.sh
halaman, jadi harus cukup sah.--disable-web-security --user-data-dir
Jawaban:
Tutup chrome (atau chromium) dan mulai kembali dengan
--disable-web-security
argumen. 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
Browser akan memperingatkan Anda bahwa "Anda menggunakan baris perintah yang tidak didukung" saat dibuka pertama kali, yang dapat Anda abaikan.
Dari sumber kromium:
Sebelum Chrome 48, Anda bisa menggunakan:
sumber
open /Applications/Google\ Chrome.app --args --disable-web-security
--user-data-dir
juga.Ya. Untuk OSX, buka Terminal dan jalankan:
--user-data-dir diperlukan di Chrome 49+ di OSX
Untuk Linux dijalankan:
Juga jika Anda mencoba mengakses file lokal untuk keperluan dev seperti AJAX atau JSON, Anda dapat menggunakan flag ini juga.
Untuk Windows masuk ke command prompt dan masuk ke folder tempat Chrome.exe dan ketik
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:
Namun Anda bisa mengabaikan pesan itu sambil mengembangkan.
sumber
--disable-web-security
tidak 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/
.open -n
. Cukup jalankanopen -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.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)
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 session
folder setiap kali Anda membuka jendela karena kedua kalinya--disable-web-security
tidak akan berfungsi. Jadi, Anda tidak dapat menyimpan perubahan dan kemudian membukanya lagi sebagai contoh Chrome yang tidak aman kedua--disable-web-security
.sumber
"C:\..\chrome.exe" --disable-web-security --user-agent="Android" --user-data-dir="C:/temp-chrome-eng" --app="file:///C:/apps/index.html"
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?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)Untuk Windows :
Jalankan perintah berikut:
Untuk Mac :
Jalankan perintah berikut:
Peramban chrome yang dinonaktifkan keamanan web yang baru akan terbuka dengan pesan berikut:
sumber
Run
.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.
WASPADALAH UNTUK TIDAK MENGGUNAKAN INSTANSI BROWSER TERTENTU INI UNTUK MENGEMBANGKAN KARENA ANDA DAPAT MENJADI KERAS DENGAN ITU!
sumber
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.
sumber
--disable-web-security
saklar dalam hal itu.--allow-file-access-from-files
alih-alih menonaktifkan semua keamanan web.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.
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
Untuk memulai server CORSProxy (http port 8080): node static_server.js 8080
untuk mengakses proxy: http: // host: 8080 / http: //www.somesite.com
sumber
Untuk Windows ... buat pintasan Chrome di desktop Anda.
Klik kanan> properti>
Edit jalan pintas "target":
(Ubah 'C: .... \ chrome.exe' ke tempat krom Anda berada).
et voilà :)
sumber
Coba perintah ini pada terminal Mac-
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.
sumber
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.
sumber
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:
di windows, klik tombol mulai kemudian salin tempel di bawah ini:
sumber
chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"
dirun
jendela di windows 10. Terima kasih banyak.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: *
sumber
Untuk Selenium Webdriver, Anda dapat meminta selenium memulai Chrome dengan argumen yang sesuai (atau "sakelar") dalam hal ini.
sumber
Jika Anda menggunakan Google Chrome di Linux, perintah berikut berfungsi.
sumber
Plugin Chrome ini berfungsi untuk saya: Allow-Control-Allow-Origin: * - Toko Web Chrome
sumber
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
Lalu arahkan browser Anda ke
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.
sumber
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
sumber
HANYA UNTUK PENGGUNA MAC
sumber
sumber
Pada Windows 10, yang berikut ini akan berfungsi.
sumber
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
Yang ini untuk Chrome Canary . Canary_CORS.bat
sumber
Di Linux-Ubuntu, untuk menjalankan secara bersamaan sesi normal dan sesi tidak aman jalankan perintah berikut:
sumber
untuk pengguna mac:
dan sebelum Chrome 48, Anda bisa menggunakan:
sumber
Ada ekstensi Chrome yang disebut CORS Toggle.
Klik di sini untuk mengaksesnya dan menambahkannya ke Chrome .
Setelah menambahkannya, alihkan ke posisi aktif untuk memungkinkan permintaan lintas-domain.
sumber
Untuk OSX, jalankan perintah berikut dari terminal:
Ini akan memulai instance baru Google Chrome dengan peringatan di atas.
sumber
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
sumber
Untuk Windows:
(menggunakan windows 8.1, chrome 44.0 )
Pertama, tutup google chrome.
Kemudian, buka command prompt dan buka folder tempat 'chrome.exe'.
Jadi saya mengetik
cd C:\Program Files (x86)\Google\Chrome\Application
:)sekarang ketik:
chrome.exe --disable-web-security
jendela baru chrome akan terbuka.
sumber
Digunakan perintah di bawah ini di Ubuntu untuk memulai chrome (nonaktifkan kebijakan asal yang sama dan buka chrome dalam mode terpisah):
sumber
Di Windows:
1) Buat pintasan baru:
2) Tempel jalur berikut:
3) Pada jenis halaman berikutnya:
Sekarang Anda memiliki chrome yang tidak aman di desktop untuk digunakan untuk debugging aplikasi CORS. Semoga jawaban grafis ini membantu beberapa orang!
sumber
Coba buka halaman ini dan nonaktifkan kebijakan keamanan domain untuk domain situs web Anda.
sumber
Input a domain name to delete its dynamic domain security policies (HSTS and Expect-CT). (You cannot delete preloaded entries.):
.