Bagaimana cara menyiapkan penangan protokol khusus di Chrome? Sesuatu seperti:
myprotocol: // testfile
Saya memerlukan ini untuk mengirim permintaan ke http://example.com?query=testfile , lalu mengirim httpresponse ke ekstensi saya.
google-chrome-extension
custom-protocol
Penguji Uji
sumber
sumber
Jawaban:
Metode berikut mendaftarkan aplikasi ke Skema URI. Jadi, Anda dapat menggunakan mycustproto: dalam kode HTML Anda untuk memicu aplikasi lokal. Ini bekerja pada Google Chrome Versi 51.0.2704.79 m (64-bit).
Saya terutama menggunakan metode ini untuk mencetak dokumen secara diam-diam tanpa memunculkan dialog cetak. Hasilnya cukup bagus dan merupakan solusi yang mulus untuk mengintegrasikan aplikasi eksternal dengan browser.
Kode HTML (sederhana):
Kode HTML (alternatif):
Skema URI akan terlihat seperti ini:
Anda dapat membuat Skema URI secara manual di registri, atau menjalankan file "mycustproto.reg" (lihat di bawah).
contoh mycustproto.reg:
Aplikasi konsol C # - myprogram.exe:
Coba jalankan program terlebih dahulu untuk memastikan program telah ditempatkan di jalur yang benar:
Klik link di halaman HTML Anda:
Anda akan melihat jendela peringatan popup untuk pertama kalinya.
Untuk mengatur ulang pengaturan penangan protokol eksternal di Chrome:
Jika Anda pernah menerima protokol khusus di Chrome dan ingin mengatur ulang pengaturan, lakukan ini (saat ini, tidak ada UI di Chrome untuk mengubah pengaturan):
Edit "Status Lokal " file ini di bawah jalur ini:
atau Cukup buka:
Kemudian, cari string ini: protocol_handler
Anda akan melihat protokol khusus dari sana.
Catatan: Harap tutup Google Chrome Anda sebelum mengedit file. Jika tidak, perubahan yang Anda buat akan ditimpa oleh Chrome.
Referensi:
https://msdn.microsoft.com/en-us/library/aa767914(v=vs.85).aspx
sumber
Preferences
file, terletak di%localappdata%\Google\Chrome\User Data\Default
Chrome 13 sekarang mendukung
navigator.registerProtocolHandler
API. Sebagai contoh,Perhatikan bahwa nama protokol Anda harus dimulai dengan
web+
, dengan beberapa pengecualian untuk yang umum (sepertimailto
, dll). Untuk detail lebih lanjut, lihat: http://updates.html5rocks.com/2011/06/Registering-a-custom-protocol-handlersumber
torrent:
dansteam:
tautan bekerja? Apakah Aplikasi Terpaket Chrome juga memiliki batasan ini?chrome.webNavigation
API,tel:
tautan tidak pernah dilaporkan.Pertanyaan ini sudah tua sekarang, tetapi ada pembaruan terkini untuk Chrome (setidaknya jika menyangkut aplikasi yang dikemas) ...
http://developer.chrome.com/apps/manifest/url_handlers
dan
https://github.com/GoogleChrome/chrome-app-samples/tree/master/samples/url-handler
Ini memungkinkan Anda untuk mendaftarkan penangan untuk URL (selama Anda memilikinya). Sayangnya tidak,
myprotocol://
tetapi setidaknya Anda dapat melakukannyahttp://myprotocol.mysite.com
dan dapat membuat halaman web di sana yang mengarahkan orang ke aplikasi di app store.sumber
Beginilah cara saya melakukannya. Aplikasi Anda perlu menginstal beberapa kunci reg saat penginstalan, lalu di browser apa pun Anda cukup menautkan ke foo: \ everythingHere.txt dan itu akan membuka aplikasi Anda dan meneruskan nilai itu.
Ini bukan kode saya, hanya sesuatu yang saya temukan di web saat menelusuri pertanyaan yang sama. Ubah saja semua "foo" dalam teks di bawah ini ke nama protokol yang Anda inginkan dan ubah jalur ke exe Anda juga.
(taruh ini ke dalam file teks sebagai simpan sebagai foo.reg di desktop Anda, lalu klik dua kali untuk menginstal kunci) ----- Di bawah baris ini masuk ke file .reg (TIDAK termasuk baris ini) --- ---
sumber
Tidak yakin apakah ini tempat yang tepat untuk jawaban saya, tetapi karena saya menemukan sangat sedikit utas yang bermanfaat dan ini adalah salah satunya, saya memposting solusi saya di sini.
Masalah : Saya ingin Linux Mint 19.2 Cinnamon membuka Evolution saat mengklik
mailto
tautan di Chromium. Gmail terdaftar sebagai penangan default di chrome: // settings / handler dan saya tidak dapat memilih penangan lain.Solusi : Gunakan pengaturan xdg di konsol
Solusi ditemukan di sini https://alt.os.linux.ubuntu.narkive.com/U3Gy7inF/kubuntu-mailto-links-in-chrome-doesn-t-open-evolution dan disesuaikan untuk kasus saya.
sumber
Buka
buka
Preferences
lalu cariexcluded_schemes
Anda akan menemukannya di 'protocol_handler' hapus skema yang dikecualikan ini untuk mengatur ulang chrome untuk membuka url dengan aplikasi defaultsumber