更新依赖项,优化 WebSocket 处理,添加文件流管道功能,改进用户认证逻辑
This commit is contained in:
@@ -10,18 +10,11 @@ class WsMessage {
|
||||
this.ws = ws;
|
||||
this.user = user;
|
||||
this.emitter = new EventEmitter();
|
||||
this.listenMessage();
|
||||
}
|
||||
async listenMessage() {
|
||||
this.ws.on('message', (event: Buffer) => {
|
||||
const eventData = event.toString();
|
||||
if (!eventData) {
|
||||
return;
|
||||
}
|
||||
const data = JSON.parse(eventData);
|
||||
logger.debug('ws-proxy listenMessage', data);
|
||||
this.emitter.emit(data.id, data.data);
|
||||
});
|
||||
async sendResponse(data: any) {
|
||||
if (data.id) {
|
||||
this.emitter.emit(data.id, data?.data);
|
||||
}
|
||||
}
|
||||
async sendData(data: any, opts?: { timeout?: number }) {
|
||||
if (this.ws.readyState !== WebSocket.OPEN) {
|
||||
@@ -65,6 +58,7 @@ export class WsProxyManager {
|
||||
value.ws.close();
|
||||
}
|
||||
}
|
||||
console.log('WsProxyManager register', id);
|
||||
const value = new WsMessage({ ws: opts?.ws, user: opts?.user });
|
||||
this.wssMap.set(id, value);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user