Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome 如何让Google Chrome打开自定义URL方案处理程序?_Google Chrome_Url_Macos Sierra - Fatal编程技术网

Google chrome 如何让Google Chrome打开自定义URL方案处理程序?

Google chrome 如何让Google Chrome打开自定义URL方案处理程序?,google-chrome,url,macos-sierra,Google Chrome,Url,Macos Sierra,我有一个带有以下链接的html测试页面: <a href="customprotocol:information-from-browser">Link.</a> 这会弹出一个对话框,询问用户是否希望将customprotocol:与应用程序关联 即使在按下OK并设置了由chrome识别的customprotocol:handler之后,链接仍然不会启动应用程序。它仍然是一个被取消的请求 这是为什么?如何在Google Chrome中实现此功能? 注1:好的,我所有的软

我有一个带有以下链接的html测试页面:

<a href="customprotocol:information-from-browser">Link.</a>
这会弹出一个对话框,询问用户是否希望将customprotocol:与应用程序关联

即使在按下OK并设置了由chrome识别的customprotocol:handler之后,链接仍然不会启动应用程序。它仍然是一个被取消的请求

这是为什么?如何在Google Chrome中实现此功能?


注1:好的,我所有的软件都更新到最新版本

注2:取消的请求没有响应和预览信息。在计时下,请求显示为已暂停。

在Chrome(桌面)上,您可以通过registerProtocolHandler api注册自定义协议


一般来说,如果chrome无法识别协议,那么协议实际上会被传递到操作系统上。所以你可能把你的chrome弄糊涂了

看看
steam://browsemedia
适用于Valve的游戏管理器Steam。调试该链接,我敢打赌它实际上会得到与您相同的结果。试试,
mailto:me
它成功地打开了我的电子邮件客户端。很明显,浏览器不需要发送和实际请求,所以我将忽略您所有的请求分析。我对此进行了测试,“暂停”状态为正确


我认为你需要重新设置你在chrome中的customhandler设置。我认为这可能会妨碍操作系统处理它。

这不起作用。此时会出现注册弹出窗口(与以前一样)。但链接上仍然显示已取消请求(与以前一样)。是针对Windows&OS X还是仅针对OS X?我有一些在OS X上注册自定义URL处理程序的示例,可以与ChromeJust MacOS一起使用。听起来像个bug,你至少可以更新一些东西(chrome?)
window.location.assign("customprotocol:");