Skip to content

Commit fc40f21

Browse files
fix(platform-ws): trigger client disconnected hook nestjs#2226
1 parent d6b31c3 commit fc40f21

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

packages/platform-ws/adapters/ws-adapter.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,10 @@ export class WsAdapter extends AbstractWsAdapter {
5555
handlers: MessageMappingProperties[],
5656
transform: (data: any) => Observable<any>,
5757
) {
58-
const close$ = fromEvent(client, CLOSE_EVENT).pipe(share(), first());
58+
const close$ = fromEvent(client, CLOSE_EVENT).pipe(
59+
share(),
60+
first(),
61+
);
5962
const source$ = fromEvent(client, 'message').pipe(
6063
mergeMap(data =>
6164
this.bindMessageHandler(data, handlers, transform).pipe(
@@ -97,4 +100,8 @@ export class WsAdapter extends AbstractWsAdapter {
97100
server.on(ERROR_EVENT, (err: any) => this.logger.error(err));
98101
return server;
99102
}
103+
104+
public bindClientDisconnect(client: any, callback: Function) {
105+
client.on(CLOSE_EVENT, callback);
106+
}
100107
}

sample/03-microservices/src/math/math.module.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { Transport } from '@nestjs/common/enums/transport.enum';
33
import { ClientsModule } from '@nestjs/microservices';
44
import { MATH_SERVICE } from './math.constants';
55
import { MathController } from './math.controller';
6+
67
@Module({
78
imports: [
89
ClientsModule.register([{ name: MATH_SERVICE, transport: Transport.TCP }]),

0 commit comments

Comments
 (0)