我想使用chrome浏览器作为数字标牌用途。强制chrome浏览器接收并执行自定义命令(例如,创建一个新选项卡并查询特定网页/url)我需要将chrome浏览器作为服务器运行正在侦听某个网络端口。
使用websockets、server.io等的最佳方式/技术是什么?
NPAPI是实现您想要的功能的唯一方法,除了从源代码大幅修改和编译Chromium之外。如果控制Chrome的客户端在浏览器中,那么将WebSocket库打包为NPAPI插件可能是你的最佳选择。如果你的客户端是桌面应用程序,那么打包一个纯TCP库就足够了。
然而,NPAPI有一个相当陡峭的学习曲线,所以如果你能帮助的话,我不建议使用它。如果可能的话,只需让Chrome建立与中央服务器的持续连接(例如,使用Socket.io)。你的客户端也可以连接到该服务器,并使用它将命令转发到你想要远程控制的Chrome实例。
所以,不是:
【控制客户端】--->【Chrome】
您可以使用:
[Chrome]--->[myserver.example.net]<---【控制客户端】
如果您的系统要求独立于互联网(即Chrome并不总是可以访问myserver.example.net等特定的外部服务器,但仍必须接受本地网络上的客户端),那么您可以在与您控制的Chrome浏览器相同的机器上运行中间服务器。
也许您可以通过NPAPI实现Node.js并使其工作。。。或者其他什么。
如果你使用其他东西会更好,因为谷歌手动控制所有的NPAPI扩展。