使用UDP套接字的JavaScript应用程序 – NodeJS和SocketIO

我想开发一个JavaScript应用程序,它应该能够通过UDP套接字与其他第三方应用程序进行通信,并通过本地浏览器窗口呈现一些数据。

据我所知,我应该使用NodeJS的UDP套接字连接,我已经testing了它的示例UDPserver.js的例子,似乎很好。

我现在的问题是如何将从UDP服务器(在本地在NodeJS控制台上运行)接收到的数据传递到我的主应用程序,该应用程序将在浏览器上运行。 我读过,我必须使用Socket.IO来实现这个实时连接。

那么,就像在同一台机器上同时运行一个客户端应用程序和一个服务器应用程序一样? socketIO如何连接这两个部分? 我应该使用WebSockets桥接我的应用程序与NodeJS或某事?

| JQUERY JS | | NODE.JS | | C++ | | | [?] | | [UDP SOCKETS] | | |LOCAL WEB APP| <=====> |UDP SERVER| <-----------------> |3RD-PARTY APPS| | (local) | | (local) | | (network) | 

有人能为我清理一下吗? 这应该是相对容易的事情,但我是新来的..

由于普通的浏览器不支持JavaScript直接访问套接字,所以只能通过网页来实现。 您正在使用节点中介和通过websockets连接浏览器的正确轨道。

但是,您的应用程序可能最适合node-webkit ,它将Chromium浏览器与node.js集成在同一个包中。 这意味着您的网页代码可以直接使用像UDP套接字这样的节点API。

您的浏览器无法通过UDP进行通信。 (无论如何,WebRTC以外)

WebSockets不是真正的networking套接字。 它们是一个通过HTTP请求首先build立的TCP连接的抽象层。

Socket.IO是另外一个抽象层,它提供类似于WebSocket的function,以及RPC,包括WebSockets,长轮询JSON等等。