我一直在使用node.js一段时间,现在当我正在深入研究它时,对于聊天应用程序而不是作为客户端 - 服务器 - 客户端发送消息,直接客户端必须有一些可能的方法客户端消息发送?
答案 0 :(得分:3)
浏览器倾向于通过HTTP与服务器通信。一些实现其他协议,如websockets& amp; SPDY,但同样,这些主要是客户端 - 服务器协议。
某些插件(如Flash和Java)可以打开端口并与客户端 - 客户端进行通信。 (AFAIK,实际上没有使用它们。)
Chrome是我所知道的唯一可以(很快)从Javascript打开TCP和UDP套接字并直接进行客户端 - 客户端通信的浏览器。目前普通网络应用无法执行此操作,您的应用需要作为“Chrome打包应用”运行,并带有特殊的manifest
文件。
以下是docs,一个描述该功能的blog post和一个browserify module,其行为类似于浏览器中的net
node.js模块。
编辑:这可能不会被标记为[node.js],因为您尝试在浏览器中运行(而不是在您的节点vm中),这是一个Javascript /浏览器问题。
答案 1 :(得分:1)
这与服务器没有任何关系。如果您需要类似的东西,如果客户端是闪存,您可以使用RTMFP。对于JS我谷歌这个library这是RTMFP的js桥,我不知道它是如何工作的。最后,您可以编写自己的库来聊天客户端,但这更难(IP地址在NAT后面等等)。
答案 2 :(得分:0)
我认为您的问题的答案是here
PS也存在使用JS编写的开源浏览器内服务器,但我没有快速谷歌。如果您找到了,请通知我。
答案 3 :(得分:0)
答案 4 :(得分:0)
这可能是过时的问题,但请查看PeerJS。
它只需要服务器作为连接管理器(代理)。但所有沟通都是直接在客户之间完成的。