通过Javascript通过TCP/IP发送命令

3

我希望能够实现以下功能,需要您的帮助:

  1. 我有一台服务器连接了一个设备,根据预定义的命令打印一些条形码。

  2. 目前有一个桌面应用程序生成该命令并完成任务。

  3. 现在我想通过Web来完成这个任务,也就是说,将会有一个网页(比如.aspx),我想通过JavaScript来实现。

我已经能够生成所需的预定义命令进行打印,但不知道如何将命令发送到服务器,无论是套接字TCP IP还是其他方法。

我尝试使用node.js、socket.io、json-socket等,但都没有起作用。


如果你正在使用TCP,为什么不用Web Socket呢? - Benjamin Trent
Web Socket 依赖于我不想要的 ws 协议。 - pratik
好的,抱歉……这是我能想到的唯一事情;) - Benjamin Trent
2个回答

1
如果Javascript是必须的,那么我认为您不会找到一个直接的解决方案。您需要创建一个中介服务,将Websocket协议转换为您的软件通信所使用的TCP/IP协议。我发现了一个叫做Websockify的包,它在几种不同的语言中实现了这种桥接。

但是,如果您愿意在前端使用Flash,并且可以满足后端连接的安全要求,那么Flash socket API可能会起作用。我相信Java小程序也可以管理这个。


0

我不相信这是可能从浏览器内部完成的。如果可以,那将是一个巨大的安全漏洞(想一想,你访问攻击者的页面,突然你的打印机开始打印,你网络上的每个共享目录都被填满了垃圾数据)。

你可以在服务器上运行命令(node/.net/其他任何...),并让 Web 平台与服务器通信以启动该进程。但这听起来有点像你已经设置好的东西...

或者,如果您可以更改连接设备上的软件,则可以尝试为其提供响应 POST 的 HTTP 端点。


有没有办法在JavaScript中包含或使用套接字? - pratik
@pratik 不是在低级别,我不这么认为。 - George Mauer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接