Limited availability
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die Navigator
Methode registerProtocolHandler()
ermöglicht es Websites, ihre Fähigkeit zu registrieren, bestimmte URL-Schemata (auch als Protokolle bekannt) zu öffnen oder zu bearbeiten.
Zum Beispiel können Webmail-Seiten mit dieser API mailto:
URLs öffnen oder VoIP-Seiten tel:
URLs.
Um einen Protokoll-Handler zu registrieren, ruft eine Website registerProtocolHandler()
auf und übergibt das zu registrierende Protokoll und eine URL-Vorlage.
Wenn der Benutzer einen Link aktiviert, der das registrierte Protokoll verwendet, fügt der Browser das href
des aktivierten Links in die während der Registrierung des Handlers bereitgestellte URL-Vorlage ein und navigiert die aktuelle Seite zur resultierenden URL.
Der Browser kann den Benutzer entweder bei der Registrierung des Protokolls oder bei der Aktivierung des Links fragen, ob die Seite das Protokoll bearbeiten darf.
SyntaxregisterProtocolHandler(scheme, url)
Parameter
scheme
Ein String, der das Schema für das Protokoll enthält, das die Seite bearbeiten möchte.
Dies kann ein benutzerdefiniertes Schema sein, in diesem Fall:
web+
web+
PräfixAndernfalls muss das Schema eines der folgenden sein:
bitcoin
ftp
ftps
geo
im
irc
ircs
magnet
mailto
matrix
mms
news
nntp
openpgp4fpr
sftp
sip
sms
smsto
ssh
tel
urn
webcal
wtai
xmpp
url
Ein String, der die URL des Handlers enthält. Diese URL muss %s
enthalten, als Platzhalter, der durch die escapte URL ersetzt wird, die behandelt werden soll.
Die Handler-URL muss das https
Schema verwenden und muss von demselben Ursprung sein wie die Webseite, die versucht, den Handler zu registrieren.
Keiner (undefined
).
SecurityError
DOMException
Der Benutzeragent hat die Registrierung blockiert. Dies könnte passieren, wenn:
https:
, about:
, etc.)https
ist.SyntaxError
DOMException
Der %s
Platzhalter fehlt in der Handler-URL.
Es ist ziemlich üblich, dass Webseiten auf Ressourcen mit nicht-https
Protokollen verlinken. Ein Beispiel ist das mailto:
Protokoll. Web-Autoren können einen mailto
Link verwenden, wenn sie eine bequeme Möglichkeit bieten möchten, damit Benutzer direkt von der Webseite aus eine E-Mail senden können:
<a href="mailto:webmaster@example.com">Web Master</a>
Wenn der Link aktiviert wird, sollte der Browser die Standard-Desktop-Anwendung zum Verarbeiten von E-Mails starten. Sie können dies als einen desktop-basierten Protokoll-Handler betrachten.
Web-basierte Protokoll-Handler ermöglichen es auch web-basierten Anwendungen, an diesem Prozess teilzunehmen. Eine E-Mail-Webanwendung unter mail.example.org
kann sich registrieren, um mailto
Links zu bearbeiten, mit Code wie diesem:
navigator.registerProtocolHandler("mailto", "https://mail.example.org/?to=%s");
Danach, wenn der Benutzer auf einen mailto
Link auf irgendeiner Website klickt, wird der Browser (möglicherweise nach einer Bestätigung des Browsers) zu https://mail.example.org/?to=mailto:webmaster@example.com
navigieren. Diese Seite könnte den URL-Parameter analysieren, um die Adresse zu extrahieren und diese verwenden, um eine E-Mail zu initialisieren.
In diesem Beispiel registriert eine Seite einen Handler für das web+burger
Protokoll mit folgendem Code:
navigator.registerProtocolHandler(
"web+burger",
"https://burgers.example.org/?burger=%s",
);
AnschlieÃend besucht der Benutzer eine Seite mit einem Link wie diesem:
<a href="web+burger:cheeseburger">cheeseburger</a>
Wenn der Benutzer den web+burger
Link aktiviert, wird der Browser (möglicherweise nach einer Bestätigung des Benutzers) zu https://burgers.example.org/?burger=web+burger:cheeseburger
navigieren.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4