问题描述
我正在尝试在nestJS中创建一个可响应多个路径的websockets网关。 这是一项要求,因为我要构建的内容将替换现有系统。 我正在使用WsAdapter作为此的基础适配器。
websockets路径可以用段(例如/ws/:key
)或正则表达式表示。
但是,WebSocketGateway装饰器仅接受单个字符串,而不能识别子弹。
import { OnGatewayInit,SubscribeMessage,WebSocketGateway } from '@nestjs/websockets';
import { Logger } from '@nestjs/common';
@WebSocketGateway({path: '/ws/:key'}) // FIXME: ":key" should be treated as a slug here
export class ManagementGateway implements OnGatewayInit {
private readonly logger = new Logger(ManagementGateway.name,false);
afterInit(server: any): any {
this.logger.debug('Websockets gateway initialized');
}
@SubscribeMessage('ctl')
handle(client: any,data: unkNown): void {
this.logger.debug('ctl');
// Todo
}
}
我要替换的先前的旧版实现使用ws
,express
和基于正则表达式的路径匹配来完成此操作。
任何提示或指针将不胜感激。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)