Interceptors

There is no difference between regular interceptors and web sockets interceptors. The following example uses a manually instantiated method-scoped interceptor. Just as with HTTP based applications, you can also use gateway-scoped interceptors (i.e., prefix the gateway class with a @UseInterceptors() decorator).

  1. @@filename()
  2. @UseInterceptors(new TransformInterceptor())
  3. @SubscribeMessage('events')
  4. handleEvent(client: Client, data: unknown): WsResponse<unknown> {
  5. const event = 'events';
  6. return { event, data };
  7. }
  8. @@switch
  9. @UseInterceptors(new TransformInterceptor())
  10. @SubscribeMessage('events')
  11. handleEvent(client, data) {
  12. const event = 'events';
  13. return { event, data };
  14. }