javascript - 从浏览器建立任意 TCP 连接

标签 javascript web-applications

这个问题在这里已经有了答案:





Connecting to TCP Socket from browser using javascript

(6 个回答)


4年前关闭。




我的 Web 应用程序需要连接到网络上的本地设备才能获取数据。

该设备具有静态 IP 地址并通过 P03 协议(protocol)进行通信。当我使用 Telnet 连接时,设备会在我的控制台中返回纯文本。

我需要在浏览器中使用 JavaScript 做同样的事情。当用户点击一个按钮时,它应该连接到 192.168.0.1:8000通过 TCP 并在页面上显示接收到的文本数据。

问题是这是一个Web应用程序。可以做客户端吗?

(我也愿意接受除 JavaScript 之外的其他建议。)

最佳答案

不幸的是,您不能只连接到任何 TCP 套接字。浏览器可以建立连接,但它必须是以下协议(protocol)之一:

  • HTTP (HTTP[S] 1.0/1.1/2)
  • Web Socket(另一种实际运行在 HTTP 之上的应用协议(protocol))
  • WebRTC(用于点对点,也可用于客户端-服务器通信,但在这里没有用)

  • 一种方法是运行各种代理。您需要创建一个代理来接受来自浏览器的 Web Socket 连接,然后将发送/接收的数据中继到此 TCP 服务器。缺点是这需要服务器。

    另一种方法是制作浏览器扩展。另见:https://stackoverflow.com/a/17567373/362536

    关于javascript - 从浏览器建立任意 TCP 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51595704/

    相关文章:

    Javascript 在元素后追加子项

    sql-server - 用于网站/Web 应用程序负载测试的工具?

    javascript - 更改 div 中包裹的字符串特定部分的颜色

    javascript - 页面加载时滚动侧边栏位置

    jquery - 建议原型(prototype)/jQuery 小部件

    .net - 在哪里可以找到有关使用 MySQL 设置 ASP.NET Web 应用程序的信息?

    asp.net - IsChanged 功能应该在哪里处理?

    javascript - 在 mongoose.find 中逐字查找

    amazon-web-services - 我检测到一些针对我的 Web 应用程序的黑客攻击。现在怎么办?

    html - 本地 webapp 可以在 iOS 上运行吗?