Nestjs中swagger运行问题?

正在学习一个项目:https://github.com/taozhi1010/nest-admin,是一个nestjs的项目,里面整合了swagger,我用swagger测试的时候把Authorize已经配置好了,但是测试接口一直提示请重新登录,这是为什么?我之前用别人的项目,把Authorize输进去后接口就能正常执行。

下面是在nestjs中的相关代码
const swaggerOptions = new DocumentBuilder()
    .setTitle('Nest-Admin')
    .setDescription('Nest-Admin 接口文档')
    .setVersion('2.0.0')
    .addBearerAuth(
      {
        type: 'http',
        scheme: 'bearer',
        bearerFormat: 'JWT',
      },
      'token',
    )
    .build();
  const document = SwaggerModule.createDocument(app, swaggerOptions);

image.png

是不是因为也需要传Cookie?
image.png

阅读 494
1 个回答

我看了一下它的源码,它是使用AuthGuard进行的token校验,在它的源码里读取的header参数是Authorization,你配置Authorization试试。AuthGuard源码位置是在server/src/common/guards/auth.guard.ts,你可以查看试试,打个断点调试一下。
image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏