您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页NodeJs实现简单WebSocket即时通讯

NodeJs实现简单WebSocket即时通讯

来源:爱go旅游网
NodeJs实现简单WebSocket即时通讯

⾄于服务器语⾔选择nodeJs,⼀是因为⾃⼰是做前端的,对javascript⽐较熟悉,相⽐于其他后台语⾔,⾃然会更喜欢nodeJs了,⼆是NodeJs本⾝事件驱动的⽅式很擅长与⼤量客户端保持⾼并发的连接。所以就选择NodeJs了。

服务器的实现很简单,先装⼀个nodeJs的模块,叫nodejs-websocket , 直接在nodeJs命令⾏中敲⼊:npm install nodejs-websocket回车就可以安装好了,

然后就可以开始建⽴服务器了,因为有了nodejs-websocket模块,所以很多⼯作都不⽤我们⾃⼰做,直接调⽤别⼈封装好的⽅法就⾏了:

服务端代码

根据客户端传来的消息判断哪个是game1,哪个是game2,保存connection对象。

var ws = require(\"nodejs-websocket\");console.log(\"开始建⽴连接...\")

var game1 = null,game2 = null , game1Ready = false , game2Ready = false;var server = ws.createServer(function(conn){ conn.on(\"text\

console.log(\"收到的信息为:\"+str) if(str===\"game1\"){ game1 = conn;

game1Ready = true;

conn.sendText(\"success\"); }

if(str===\"game2\"){ game2 = conn;

game2Ready = true; }

if(game1Ready&&game2Ready){ game2.sendText(str); }

conn.sendText(str) })

conn.on(\"close\ console.log(\"关闭连接\") });

conn.on(\"error\ console.log(\"异常关闭\") });

}).listen(8001)

console.log(\"WebSocket建⽴完毕\")

【game1代码】:通过点击获取三个框的内容,传到服务器

Document

正在连接...

⼩明⼩明
⼤胸⼤胸
⼩张⼩张

【game2代码】:获取服务推送来的消息,并且显⽰

Document

运⾏截图:

代码⾮常简单:很容易看懂,nodejs-WebSocket的调⽤也⾮常简洁明了,具体nodejs-websocket的API可以看,

⾥⾯都有介绍,⾃⼰测试⼀下,就很容易了,客户端的实现也是很简单,就通过onopen,onmessage等⼏个⽅法就可以实现了。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务