Comment configurer un gestionnaire de protocole personnalisé dans Chrome? Quelque chose comme:
myprotocol: // fichier de test
J'en aurais besoin pour envoyer une requête à http://example.com?query=testfile , puis envoyer la réponse http à mon extension.
google-chrome-extension
custom-protocol
Testeur de test
la source
la source
Réponses:
La méthode suivante enregistre une application dans un schéma URI. Ainsi, vous pouvez utiliser mycustproto: dans votre code HTML pour déclencher une application locale. Il fonctionne sur une version de Google Chrome 51.0.2704.79 m (64 bits).
J'ai principalement utilisé cette méthode pour imprimer un document en silence sans que la boîte de dialogue d'impression ne s'affiche. Le résultat est plutôt bon et constitue une solution transparente pour intégrer l'application externe au navigateur.
Code HTML (simple):
Code HTML (alternative):
Le schéma d'URI ressemblera à ceci:
Vous pouvez créer le schéma d'URI manuellement dans le registre ou exécuter le fichier "mycustproto.reg" (voir ci-dessous).
Exemple mycustproto.reg:
Application console C # - myprogram.exe:
Essayez d'abord d'exécuter le programme pour vous assurer que le programme a été placé dans le bon chemin:
Cliquez sur le lien sur votre page HTML:
Vous verrez une fenêtre contextuelle d'avertissement pour la première fois.
Pour réinitialiser le paramètre du gestionnaire de protocole externe dans Chrome:
Si vous avez déjà accepté le protocole personnalisé dans Chrome et que vous souhaitez réinitialiser le paramètre, procédez comme suit (actuellement, il n'y a pas d'interface utilisateur dans Chrome pour modifier le paramètre):
Editez " Local State " ce fichier sous ce chemin:
ou allez simplement à:
Ensuite, recherchez cette chaîne: protocol_handler
Vous verrez le protocole personnalisé à partir de là.
Remarque: veuillez fermer votre Google Chrome avant de modifier le fichier. Sinon, la modification que vous avez apportée sera écrasée par Chrome.
Référence:
https://msdn.microsoft.com/en-us/library/aa767914(v=vs.85).aspx
la source
Preferences
fichier, situé à%localappdata%\Google\Chrome\User Data\Default
Chrome 13 prend désormais en charge l'
navigator.registerProtocolHandler
API. Par exemple,Notez que le nom de votre protocole doit commencer par
web+
, à quelques exceptions près pour les plus courants (commemailto
, etc.). Pour plus de détails, voir: http://updates.html5rocks.com/2011/06/Registering-a-custom-protocol-handlerla source
torrent:
etsteam:
alors? Les applications Chrome Packaged ont-elles également cette restriction?chrome.webNavigation
API, lestel:
liens ne sont jamais signalés.Cette question est ancienne maintenant, mais il y a eu une mise à jour récente de Chrome (du moins en ce qui concerne les applications packagées) ...
http://developer.chrome.com/apps/manifest/url_handlers
et
https://github.com/GoogleChrome/chrome-app-samples/tree/master/samples/url-handler
Il vous permet d'enregistrer un gestionnaire pour une URL (tant que vous en êtes propriétaire). Malheureusement non,
myprotocol://
mais au moins vous pouvez le fairehttp://myprotocol.mysite.com
et vous pouvez créer une page Web qui dirige les gens vers l'application dans l'App Store.la source
Voilà comment je l'ai fait. Votre application devra installer quelques clés de registre lors de l'installation, puis dans n'importe quel navigateur, vous pouvez simplement créer un lien vers foo: \ anyHere.txt et il ouvrira votre application et lui transmettra cette valeur.
Ce n'est pas mon code, juste quelque chose que j'ai trouvé sur le Web en cherchant la même question. Changez simplement tous les "foo" dans le texte ci-dessous par le nom du protocole que vous voulez et changez également le chemin de votre exe.
(placez-le dans un fichier texte sous le nom de fichier foo.reg sur votre bureau, puis double-cliquez dessus pour installer les clés) ----- Au-dessous de cette ligne va dans le fichier .reg (sans inclure cette ligne) --- ---
la source
Je ne sais pas si c'est le bon endroit pour ma réponse, mais comme j'ai trouvé très peu de fils utiles et que c'était l'un d'entre eux, je publie ma solution ici.
Problème : je voulais que Linux Mint 19.2 Cinnamon ouvre Evolution en cliquant sur des
mailto
liens dans Chromium. Gmail a été enregistré comme gestionnaire par défaut dans chrome: // settings / handlers et je ne pouvais pas choisir un autre gestionnaire.Solution : utilisez les paramètres xdg dans la console
La solution a été trouvée ici https://alt.os.linux.ubuntu.narkive.com/U3Gy7inF/kubuntu-mailto-links-in-chrome-doesn-t-open-evolution et adaptée à mon cas.
la source
ouvert
ouvrez
Preferences
puis recherchezexcluded_schemes
vous le trouverez dans 'protocol_handler' supprimez ce (s) schéma (s) exclu (s) pour réinitialiser chrome pour ouvrir l'url avec l'application par défautla source