加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
webSocket.js 1.35 KB
一键复制 编辑 原始数据 按行查看 历史
码尚 提交于 2020-04-15 00:18 . 完善项目
// websocke服务端的配置
const WebSocket=require('ws');
// 定义webshocket服务器
const wsServer= new WebSocket.Server({port:3030});
console.log(`websocket is running on port 3030`)
// 定义连接到的webSocket集合
let socketSet=[];
// 监听连接
wsServer.on('connection',(websocket,req,res)=>{
console.log('web',req.url)
const userId=req.url.split('/');
//console.log(222,userId[1])
let isExist =false;//标记当前用户是否在线
socketSet.forEach(ws=>{
// console.log(444,ws)
if(ws.currentId==userId[1]) isExist=true;
});
// console.log(333,isExist)
if(!isExist){
socketSet.push({
websocket:websocket,
currentId:userId[1]
})
}
// 监听受到消息后将消息推送给目标对象
websocket.on('message',function incoming(message){
console.log("message",message)
const msgObj=JSON.parse(message);
socketSet.forEach(ws=>{
console.log('监听到消息',ws.websocket.readyState)
if(ws.websocket.readyState==1){
console.log('返回消息给客户端')
// 客户端与服务端连接成功
ws.websocket.send(JSON.stringify({
msg:msgObj.msg,
from: msgObj.current
}))
}
})
})
});
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化