Guards
Il n’y a pas de différence fondamentale entre les guards des sockets Web et les guards d’application HTTP classiques. La seule différence est qu’au lieu de lancer une HttpException
, vous devez utiliser une WsException
.
Binding guards
L’exemple suivant utilise un guard à portée de méthode. Tout comme avec les applications basées sur HTTP, vous pouvez également utiliser des guards à portée de gateway (c’est-à-dire préfixer la classe de la gateway avec un décorateur @UseGuards()
).
@UseGuards(AuthGuard)@SubscribeMessage('events')handleEvent(client: Client, data: unknown): WsResponse<unknown> { const event = 'events'; return { event, data };}
@UseGuards(AuthGuard)@SubscribeMessage('events')handleEvent(client, data) { const event = 'events'; return { event, data };}