Come sapere se un protocollo è valido in Javascript [duplicate]
-
15-11-2019 - |
Domanda
Possibile duplicazione:
Come rilevare i gestori di protocollo del browser?
Un determinato software (non basato su browser) installa un protocollo personalizzato quando è installato.Quindi, se il software è installato sul sistema, mettendo un link che assomiglia
<a href="mycustomprotocol:///foobar">Launch the program!</a>
in una pagina web lancia il software quando si fa clic (dopo aver messo un avviso, naturalmente).
Se il software non è installato, voglio cambiare dinamicamente l'elemento in modo che il browser non provi a lanciarlo.
C'è un modo in javascript per rilevare se un protocollo è valido?Vorrei che funzionasse almeno in Firefox, IE, Chrome e Safari.
Grazie
Soluzione
Non c'è modo per JavaScript di accedere al file system o al registro di sistema desktop di un utente per convalidare un protocollo personalizzato.
Altri suggerimenti
Puoi provare a catturare l'errore nella finestra.Evento onError o un evento. onError se supportato, quindi utilizzare javascript per passare all'URL di riserva.
Tutto ciò a cui hai accesso in javascript è navigator.plugins
che ti dirà quali plugin sono installati.Il problema con questo è che il browser passerà il protocollo sul sistema operativo per la gestione se non sa come gestirlo da solo, e non è possibile tramite javascript trovare tutti i diversi gestori di protocolli che il sistema operativo ha installato.
Quindi in altre parole:No...