Web 套接字防护和 常规 HTTP 应用程序防护 之间没有根本区别。唯一的区别是,您不应抛出 HttpException
,而应使用 WsException
。
WsException
类从 @nestjs/websockets
包中公开。
绑定防护
以下示例使用方法范围防护。与基于 HTTP 的应用程序一样,您也可以使用网关范围防护(即,在网关类前添加 @UseGuards()
装饰器)。
ts
TS
ts
@UseGuards(AuthGuard)
@SubscribeMessage('events')
handleEvent(client: Client, data: unknown): WsResponse<unknown> {
const event = 'events';
return { event, data };
}