优化websocket监听消息
This commit is contained in:
+2
-7
@@ -24,27 +24,22 @@ function initWebSocket(server) {
|
|||||||
|
|
||||||
if (!token) {
|
if (!token) {
|
||||||
console.log("没有提供token");
|
console.log("没有提供token");
|
||||||
|
|
||||||
ws.close();
|
ws.close();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 验证JWT
|
// 验证JWT
|
||||||
let user;
|
let user;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
user = verifyToken(token);
|
user = verifyToken(token);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log("JWT验证失败:", error.message);
|
console.log("JWT验证失败:", error.message);
|
||||||
|
|
||||||
ws.close();
|
ws.close();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log("WebSocket用户:", user);
|
console.log("WebSocket用户:", user);
|
||||||
|
|
||||||
const username = user.username;
|
const username = user.username;
|
||||||
|
|
||||||
// 保存连接
|
// 保存连接
|
||||||
addConnection(username, ws);
|
addConnection(username, ws);
|
||||||
|
|
||||||
@@ -52,7 +47,6 @@ function initWebSocket(server) {
|
|||||||
ws.on("message", (message) => {
|
ws.on("message", (message) => {
|
||||||
try {
|
try {
|
||||||
const data = JSON.parse(message.toString());
|
const data = JSON.parse(message.toString());
|
||||||
|
|
||||||
console.log("收到WebSocket消息:", data);
|
console.log("收到WebSocket消息:", data);
|
||||||
|
|
||||||
handleMessage(username, data);
|
handleMessage(username, data);
|
||||||
@@ -93,6 +87,7 @@ function handleMessage(username, data) {
|
|||||||
function handleSendMessage(senderName, data) {
|
function handleSendMessage(senderName, data) {
|
||||||
const receiverName = data.receiverName;
|
const receiverName = data.receiverName;
|
||||||
const content = data.content;
|
const content = data.content;
|
||||||
|
const createdAt = data.createdAt;
|
||||||
|
|
||||||
console.log(
|
console.log(
|
||||||
`${senderName} → ${receiverName}:${content}`
|
`${senderName} → ${receiverName}:${content}`
|
||||||
@@ -100,7 +95,6 @@ function handleSendMessage(senderName, data) {
|
|||||||
|
|
||||||
// 找到接收者的WebSocket
|
// 找到接收者的WebSocket
|
||||||
const receiverWs = getConnection(receiverName);
|
const receiverWs = getConnection(receiverName);
|
||||||
|
|
||||||
if (!receiverWs) {
|
if (!receiverWs) {
|
||||||
console.log(`${receiverName} 当前不在线`);
|
console.log(`${receiverName} 当前不在线`);
|
||||||
return;
|
return;
|
||||||
@@ -114,6 +108,7 @@ function handleSendMessage(senderName, data) {
|
|||||||
senderName,
|
senderName,
|
||||||
receiverName,
|
receiverName,
|
||||||
content,
|
content,
|
||||||
|
createdAt
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user