通过可监听的套接字连接发送信息(在本例中为温度数据,每秒)的服务器。
目标是使用 JavaScript 显示温度并动态更新网页上的值。
无法修改服务器。
最佳答案
JavaScript 不能打开任意 TCP 连接,因为当与基于 IP 地址进行身份验证的服务结合使用时,这会导致各种困惑,或者根本不打开(并且仅受防火墙保护) 。这包括 Windows 或 NFS 文件共享、普通打印机、普通 LAN 游戏、普通家庭路由器的 Web 界面和大量企业软件。
您无法真正阻止浏览器访问恶意站点(因为其中包括 visiting a trusted site with malicious ads )。如果这些站点可以影响任意 TCP 连接,那么它们可以尝试 RFC 1918 private address ranges 中的每个 IP 地址。 ,或客户端所在组织的地址范围内的每个 IP 地址,并确定您拥有哪些设备。仅此一点就构成了严重的隐私泄露,但想象一下恶意软件网站找到一台打印机,然后在您不小心访问它时在您的办公室打印出垃圾邮件。
你可以做的是使用 WebSocket将 native TCP 转换为 WebSocket 的服务器。大多数 Websocket 实现都会有这样的服务器作为演示应用程序,但您也可以使用 standalone proxy .
关于JavaScript 套接字连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9154035/