103 votes

Gestionnaire de protocole personnalisé dans chrome

Comment puis-je configurer un gestionnaire de protocole personnalisé dans Chrome ? Quelque chose comme :

monprotocole://testfile

J'en aurais besoin pour envoyer une requête à http://example.com?query=testfile puis envoyer la réponse http à mon extension.

0 votes

Je ne pense pas que Chrome prenne actuellement en charge cette fonctionnalité, car il dispose d'un ensemble assez limité d'API pour les extensions.

1voto

MikeM Points 54

J'ai constaté que la solution proposée par Jun Hsieh et MuffinMan fonctionne généralement lorsqu'il s'agit de cliquer sur des liens sur des pages dans Chrome ou de coller dans la barre d'URL, mais n'a pas semblent fonctionner dans un cas spécifique de passage de la chaîne sur la ligne de commande.

Par exemple, les deux commandes suivantes ouvrent une fenêtre Chrome vierge qui ne fait ensuite rien.

"c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "foo://C:/test.txt"
"c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --new-window "foo://C:/test.txt"

À titre de comparaison, l'introduction dans Chrome d'une URL http ou https à l'aide de l'une de ces commandes entraîne l'ouverture de la page Web.

Ce problème est apparu parce qu'un de nos clients a signalé que le fait de cliquer sur des liens vers notre produit à partir d'un PDF affiché dans Adobe Reader ne permet pas d'invoquer notre produit lorsque Chrome est le navigateur par défaut. (Il fonctionne bien avec MSIE et Firefox par défaut, mais pas lorsque Chrome ou Edge sont par défaut).

Je suppose qu'au lieu de demander à Windows d'invoquer l'URL et de laisser Windows se débrouiller, le produit Adobe trouve le navigateur par défaut, qui est Chrome dans ce cas, puis transmet l'URL sur la ligne de commande.

J'aimerais savoir si quelqu'un connaît des paramètres de sécurité ou d'autres paramètres de Chrome qui pourraient être pertinents ici pour que Chrome gère entièrement un gestionnaire de protocole, même s'il est fourni par la ligne de commande. J'ai cherché mais je n'ai rien trouvé jusqu'à présent.

Je l'ai testé avec Chrome 88.0.4324.182.

-1voto

Ouvrir

C:\Users\<Username>\AppData\Local\Google\Chrome\User Data\Default

ouvrir Preferences puis chercher excluded_schemes vous le trouverez dans 'protocol_handler' supprimez ce(s) schéma(s) exclu(s) pour que chrome ouvre l'url avec l'application par défaut

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X