网站搜索

node.js - 如果我想让我的 graphql 端点不是 `/graphql`,我该如何使用 `GraphqlModule` 配置它?


我在我的 main.ts 中有以下代码:

const server = express();
const app = await NestFactory.create(AppModule, new ExpressAdapter(server));
app.listen(9000);

在我的 AppModule 导入中,我还有这个:

GraphQLModule.forRootAsync({
  useFactory: (config: ConfigService) => config.get('graphql'),
  inject: [ConfigService],
}),

然后我在地址 http://localhost:9000/graphql 访问我的 GraphQL 端点。我的问题是,我如何将 GraphQL 端点更改为其他 URL,例如:http://localhost:9000/whatever?/graphql 是默认内部配置的,还是在某个地方指定的?

答案#1

你可以在模块选项中用键 path 指定 graphql 端点:

GraphQLModule.forRoot({
  // ...
  path: '/mygraphql',
}),

或者在你的情况下,分别在你的 ConfigService 提供的配置中。