在Windows 10 Edge Browser中使用javascript检测自定义URL协议处理程序

时间:2015-07-03 10:40:09

标签: javascript internet-explorer browser microsoft-edge url-protocol

在我们的网络应用程序中,我们需要查看是否在Windows 10计算机中使用带有 Windows 10 EDGE浏览器的javascript注册了自定义URL协议处理程序

如果自定义URL协议处理程序未在Windows 10计算机中注册,我们将要求用户下载我们的桌面独立应用程序。 如果已注册,我们将使用注册的自定义URL协议处理程序启动我们的桌面独立应用。

由于EDGE是一种新的浏览器,因此互联网上其他用户提供的解决方案无效。

我提到的链接在EDGE浏览器中对我不起作用:

https://gist.github.com/keyvanfatehi/f2f521c654bab106fdf9

请帮帮我, 谢谢

1 个答案:

答案 0 :(得分:1)

也许这种解决方法有帮助:

每当您使用MS Edge导航到未知协议时,Windows都会询问用户应用程序以处理此协议。您可以导航到您的协议并显示一条消息,其中包含有关如果该工具未打开该怎么办的信息。像这样的东西(抱歉德国截图):

<div id="toolBox">
   	<p id="toolBoxText"></p>
	<input type="button" id="toolButton" onclick="openTool()" value="Start tool" />
</div>
<script type="text/javascript">
    	   function openTool(){
    		   window.location = 'myprotocol://command/';
    		   document.getElementById("toolButton").value = "Try again";
    		   document.getElementById("toolBoxText").innerHTML = "Thank you for using our tool. If the tool did not open successfully, please first download and install the tool <a href='download/'>here</a> and then try again."
    	   }
</script>

enter image description here