我如何以及在哪里使用导航器。registerProtocolHandler使它工作?
.
本主题建议您可以调用以下函数来添加自定义协议处理程序:
navigator.registerProtocolHandler('web+custom', 'http://example.com/rph?q=%s', 'My App');
当我从控制台调用它时,我得到
Uncaught DOMException: Failed to execute 'registerProtocolHandler' on 'Navigator':
Can only register custom handler in the document's origin.
如果我像这里建议的那样将它作为内容脚本的一部分,也会发生这种情况
install_protocol.html
<head>
<title>Web Protocol Handler Sample - Register</title>
<script type="text/javascript">
navigator.registerProtocolHandler("burger",
"http://www.google.co.uk/?uri=%s",
"Burger handler");
</script>
</head>
我也试着在我的background.js脚本中调用它,它没有给出错误,但是协议似乎没有响应。
.
你能解释一下如何在Chrome中注册和使用自定义协议的过程吗?
如果你想用URL http://www.google.co.uk…
注册处理程序,那么你的脚本(一个,调用navigator.registerProtocolHanlder
)必须从相同的域加载,即www.google.co.uk
。