uid: obj.uid
});
boardcast({
type: 1,
date: getDate(),
msg: obj.nickname+‘加入聊天室’,
users: users,
uid: obj.uid,
nickname: obj.nickname
});
} else {
boardcast({
type: 2,
date: getDate(),
msg: obj.msg,
uid: obj.uid,
nickname: obj.nickname
});
}
})
conn.on(“close”, function (code, reason) {
console.log(“关闭连接”)
});
conn.on(“error”, function (code, reason) {
console.log(“异常关闭”)
});
}).listen(8001)
console.log(“WebSocket建立完毕”)
这里和《 WebSocket简绍- 第一章》大体结构相同,不同的是,这里向客户端发送消息是用的一个方法
server.connections.forEach(function(conn) {
conn.sendText(JSON.stringify(obj));
})
遍历所有连接,发送信息。
这里为什么要JSON.stringify(obj)
转换成字符串???
那是sendText
方法只能传入字符串,所以我们需要将我们的对象转换一下。
同时,大家应该可以看出,在conn.on("text", ()=>{})
的时候判断了一个从客户端传入的type
,这个操作是判断用户是否是第一次进入。
WebSocket客户端视图层
<c-dialog
ref=“loginDialog”
title=‘请输入你的昵称’
confirmBtn=“开始聊天”
@confirm=“login”