我正在使用ws webSocket(不能使用 socket.io),我对它有点陌生。我知道它是如何工作的,但不完全了解一些事情。
如何使用 jwt 进行身份验证?文档说使用事件是正确的
upgrade
方法,但是当客户端连接时,upgrade
函数中的代码没有运行。添加事件类型的正确方法是什么?在 socket.io 中,可以使用
client.on('eventType', function)
. 什么是 webSocket ws 等价物?何时以及为什么会在 webSocket ws 中使用路径?
更新
更新事件不会在我这边被触发。这是我的代码:
文件 1
const server = require('http').createServer(app);
require('./socket/socket')(server);
文件 2
module.exports = function(server) {
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
server.on('upgrade', function(request, socket, head) {
console.log('Upgraded');
wss.handleUpgrade(request, socket, head, function(ws) {
wss.emit('connection', ws, request);
});
});
wss.on('connection', function connection(ws) {
ws.on('message', function incoming(message) {
console.log('received: %s', message);
});
});
};