有没有办法在NestJS的Websocket服务器中动态订阅事件?

7

我正在尝试找到一种动态使用@SubscribeMessage()装饰器的方法。

到目前为止,我已经能够像在方法(a)中一样监听“已知事件”。但是我想在控制器中动态生成事件名称<方法(b)>,并在网关中开始监听它。

或者,我想监听在该套接字上发出的所有事件并像方法2中那样处理它们。

方法(a):

 @SubscribeMessage('event1')
  handleMessage(args[]){
  // DO STUFF
  } 
方法(b):
  @SubscribeMessage(MY_DYNAMIC_EVENT_AT_RUNTIME)
  async handleMessage(client: Socket, payload: string){
    //DO STUFF
 }

方法二:

@SubscribeMessage(*)
  async handleMessage(client: Socket, payload: string){
    //DO STUFF
  }

我看到一些关于socket.io的通配符概念,我该如何在NestJs中使用它?

1个回答

0
你可以尝试使用房间和命名空间。

你的回答可以通过提供更多的支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的回答是否正确。你可以在帮助中心找到关于如何撰写好回答的更多信息。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接