2022.21 Web页面和本地程序通信的方法

因为安全限制,web页面不能直接操作本地电脑资源,因此一些访问本地文件或操作本地设备之类的操作需要客户端本地程序来做,这就涉及到web页面与客户端电脑本地程序通信交互。

以前主流浏览器还是IE的时候,可以通过ActiveX、OCX控件或Flash,但在主流用chrome,IE要退役的当下,这种方法已经过时了。

现在比较通用的方法是url-protocol技术, 自定义协议Protocol URL,大概流程是预先写好注册表信息,web调用的时候会导航到注册表的具体信息调用程序,类似web版的shellexecute功能,可以打开本地电脑程序并传入命名行参数,url-protocol技术写入注册表的内容如下:


如果要限制应用程序不能启动多个实例,可以通过进程间通讯,启动时判断进程已存在就直接做参数传递就行。

如果启动的程序支持HTTP接口通讯或者本地电脑本身已启动有HTTP服务程序,web页面也可以调用本地服务的HTTP接口来通讯。例如,当你本地登录了QQ后再打开QQ的Web站点会显示你当前登录的QQ就是利用了这个技术。

不过HTTP请求是单向的,只能Web页面向本地程序发送请求,如果想要Web页面和本地程序双向通讯,则可以通过Websocket协议。


物联网是数字经济时代的重要基础设施,数字经济则是物联网时代的最终经济形态。在政策上,被列为"中国七大大数字经济重点产业"之一的物联网,正伴随着《"十四五"数字经济发展规划》等相关促进中国快速进入数字经济时代的政策的出台,而获得了更多的利好。


物联网代表着人类社会发展的未来,但它的终极使命比字面意义广阔得多。它是一个机器的“世界操作系统”,与人体的“操作系统”相配合,由机器助力人类的“感知、通信、存储、计算、行动、反馈”,为全人类福祉做贡献,循环往复,永不言倦。  ——微软中国CTO 韦青


从物联网的视角去看,今天所有的产品可以分成三类:物联网的原住民、移民和边民。像无人驾驶汽车等就是“物联网原住民”,工厂里被数字化改造的设备是“物联网移民”,而至今仍没有接入物联网的产品则是“物联网边民”。——阿里研究院副院长 安筱鹏




posted on 2022-05-21 22:58  时间朋友  阅读(1243)  评论(0编辑  收藏  举报

导航