在nestjs上,如何开启graphql订阅和websocket网关?

问题描述 投票:0回答:0

我正在开发同时提供 graphql 订阅 api 和 websocket 网关的 nestjs 应用程序。 但是,在为 websocket 网关添加以下代码时,graphql 订阅 api 不起作用。

[在 main.js 中]

app.useWebSocketAdapter(new WsAdapter(app));

订阅api和websocket网关的代码片段如下;

[订阅graphql]

GraphQLModule.forRootAsync({
      imports: [ConfigModule],
      inject: [ConfigService],
      driver: ApolloDriver,
      useFactory: (configService: ConfigService) => {
        return {
          ...
          installSubscriptionHandlers: true,
          subscriptions: {
            "graphql-ws": true,
            "subscriptions-transport-ws": true,
          },
        };
      },
    }),

[对于 Websocket 网关]


@WebSocketGateway({
  path: "/ws",
})
export class WebSocketServer
  implements OnGatewayConnection, OnGatewayDisconnect
{.....

我想在一个应用程序中同时提供 graphql 订阅 api 和 websocket 网关。

我应该在哪里修改应用程序以在一个应用程序中同时提供 graphql 订阅 api 和 websocket 网关??

typescript websocket graphql nestjs apollo-server
© www.soinside.com 2019 - 2024. All rights reserved.