问题标签 [nestjs-swagger]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
25 浏览

nestjs - 如何读取nestjs/swagger dto中以下字段的数据。我是nestjs的新手,感谢任何帮助

idProofs = [ { name: 'PAN Card', number: '22TB12CD', fileName: ['22TB12CD.png', '22TB12CD.png','22TB12CD.png' ] }, { name: 'Aadhar Card', number: '359821231',文件名:['359821231.png'] },{名称:'护照',号码:'AT123ZS',文件名:['AT123ZS.png'] },];

我不知道如何把它放在我的 dto 中。在这里,我使用 multipart/form-data 进行文件上传,因此其他字段无法正常工作。我使用了这种方法,也定义为类,但只在 json 数据中获取空白字段。如何在 nestjs 中使用 swagger dto 读取这些数据。

0 投票
0 回答
41 浏览

npm - NestJs - CLI 插件 - 为 npm 依赖项启用 Swagger 插件

我创建了一个用于不同项目(前/后)的 npm DTO 库

在背面,我使用 NestJs,我想在创建的库上激活 NestJs 的 Swagger CLI-Plugin ( https://docs.nestjs.com/openapi/cli-plugin ),知道怎么做吗?

0 投票
1 回答
58 浏览

node.js - NestJS:如何处理自定义导向器错误

我有一个NestJS后端应用程序。

我的控制器.ts

@ClientRoles抛出Permission not fulfilled, 403 (FORBIDDEN)错误,如果用户没有所需的角色(例如test-role)。

问题是,我可以在终端中看到错误消息(错误:权限未完成),但在我的 Swagger UI 响应正文中没有收到相同的错误消息

我在 Swagger UI 中收到以下错误消息,而不是错误消息。

也很难调试。

任何帮助表示赞赏。

0 投票
1 回答
116 浏览

nestjs - ApiProperty 不反映我想要的数据类型

我正在创建一个 POST 端点,它将接收具有一个属性的对象:returnIds。此返回 id 将是一个 NUMBERS 数组

为此,我创建了这个 DTO

问题是招摇向我展示了这个

在此处输入图像描述

我需要改变的是,显示的示例是“字符串”a 0 或与数字相关的东西?

这是我的终点

在此处输入图像描述

非常感谢你

0 投票
1 回答
449 浏览

nestjs - NestJS 映射类型和 DTO 使用

我对 NestJS 中的映射类型感到困惑。

文档说创建一个新类,PartialType使其验证装饰器是可选的。

因此,我们在验证管道中使用它,就像使用原始类一样。

我想知道这是否是派生类的正常用法。我的意思是,使创建部分更新 DTO 变得容易。

如果是这样,为什么它在一个 swagger 包(或 graphql)中而不是在核心的 utils 中?

0 投票
2 回答
267 浏览

typescript - 为什么这个Schema为空.....如何在nestjs中设置@ApiProperty

我像这样在 Dto 中创建 @ApiProperty()

}

然后它得到一个像这样的空结果

https://i.stack.imgur.com/kYGP5.jpg

0 投票
0 回答
91 浏览

unit-testing - 如何在 Nest js 单元测试中配置邮件选项

我是这个框架Nest JS的新手。当我尝试实施单元测试时,它会抛出节点邮件错误。我不知道如何在单元测试中配置邮件选项。所以,我谷歌它如何解决这个问题。我得到了答案,我尝试了那个答案,但它不起作用。许多实现单元测试的第三方模块会抛出错误,例如(JWT_module 选项,节点邮件程序)

代码

面对这个错误

在此处输入图像描述

如何解决此问题

0 投票
1 回答
1831 浏览

javascript - @nestjs/swagger 没有设置授权标头

无法在使用的路线中授权,@nestjs/swagger@5.0.9因为我t know how to configure the 以正确的方式使用 Document`,并且在授权官方文档/stackoverflow/github 中找不到可行的答案。

我在 swagger 中偶然发现了 JWT 授权的问题。我正在使用"@nestjs/swagger": "^5.0.9",在从公共路由获取访问令牌后,我将其插入到配置有.addBearerAuth()方法的 swagger ui 字段“授权”中,该方法在此版本(5.0.9)中具有此签名

相对于它的低版本

我已经在 Postman 中测试了我的 API,并且很容易获得授权,我还创建了一个交叉器,它在路由调用之前打印标题,但不幸的是它只在我调用公共路由时打印它们:/

我只知道 Postman 正在设置一个 Bearer 令牌并且它会抛出路由,而 swagger 并没有发生类似的事情。

我已经尝试了很多这种配置的组合,但我还没有找到一个解决方案,结果我在我的路由方法中获得了授权,从 swagger 我无法达到它,因为swagger auth 不是在配置错误或我做错事的情况下设置授权标头。我想不通。

a 的配置addBearerAuth放在较低的位置:

我的控制器中的路线示例。与一个@ApiBearerAuth()装饰器相匹配,该装饰器大摇大摆地表示,未经授权就无法使用该方法。

0 投票
1 回答
338 浏览

javascript - @nestjs/swagger:如何在没有 @ApiOkResponse 装饰器的情况下添加架构?

我有两个 DTO。用户DTO 和用户DTO。UsersDTO 大摇大摆地显示,因为我有一个端点来获取用户列表,对于那个端点我有

在 UsersDTO 中,我使用 $ref 来使用 UserDTO。UsersDTO 看起来像

但它不能大摇大摆地工作。Swagger 显示[string]items.

有什么办法让它工作吗?

0 投票
0 回答
53 浏览

nestjs - 如何将路由添加到 Nestjs 应用程序中不存在的 Swagger

我有一个带有一堆路由的nestjs 应用程序,这些路由显示在应用程序的OpenAPI (Swagger) 页面上。但是,还有另一条路线与其他路线具有相同的 url 路径,但由不同的团队在另一个代码库中处理。我的问题是,我是否可以通过手动将其添加到 Swagger 来在我的 Swagger 文档中显示其他路由,即使它的控制器实际上并不存在?