如何在浏览器上启动本地的应用程序

总结了一下业界比较流行的实现方式,如有弊误,请更正。

四种方案:

1.自定义协议

可参考信息:http://www.cnblogs.com/wuqincao/p/3148045.html

最简单的一种是通过自定义协议,类似于mailto http https 主流浏览器都支持只需要在注册表中添加相应内容即可。如在页面启动迅雷下载器。

2. NPAPI 插件

如何在window下开发NPAPIhttp://mozilla.com.cn/post/21666/

NPAPI 是重型武器,当别的方法无法到达你的目的时,才建议使用。

运行在NPAPI插件中的代码拥有当前用户的全部权限,不能利用Google Chrome 的沙箱技术和其他安全防护技术。 在处理不可信任的输入, content scriptsXMLHttpRequest 时,你必须格外小心。

鉴于使用NPAPI可能引入的风险,使用了NPAPI的扩展在提交给web store或者extension gallery 时要经过人工审核。

所以从20141月开始,Chrome Stable版本将阻止网页安装NPAPI插件,只允许白名单里的流行插件继续使用: Silverlight,Unity,Google Earth,Google Talk,Facebook Video。

 

3.Browser Extenstion

如何开发基于ChromeExtenstionhttp://open.chrome.360.cn/extension_dev/overview.html

一个应用(扩展)其实是压缩在一起的一组文件,包括HTMLCSSJavascript脚本,图片文件,还有其它任何需要的文件。 应用(扩展)本质上来说就是web页面,它们可以使用所有的浏览器提供的API,从XMLHttpRequestJSONHTML5全都有。

应用(扩展)可以与Web页面交互,或者通过content scriptcross-origin XMLHttpRequests与服务器交互。应用(扩展)还可以访问浏览器提供的内部功能,例如标签或书签等。

Browser Extenstion 如何与本地应用程序通信流程

WebPage ---> Browser Extenstion ---> Native Message  --->  Local Appliction

4. WebSocket

待研究,,,


你可能感兴趣的:(如何在浏览器上启动本地的应用程序)