Rod*_*257 14 node.js swagger swagger-ui swagger-editor
我花了很多时间试图找到在Node.JS中创建swagger文档的解决方案.主库是swagger-node,在其中创建一个swagger yaml文件,然后将控制器添加到它.它会自动在您的应用中提供swagger ui文档,并根据您在yaml中指定的模型对请求和响应进行验证.
这很整洁,但是我要求我希望明确能够返回或接受某些字段null作为值,例如:
{
id: 123,
description: "string",
date_sent: null
}
Run Code Online (Sandbox Code Playgroud)
我不想删除date_sent密钥,我想明确地将其声明为null.
swagger规范不支持anyOfJSON模式通常如何做到这一点我相信.
我想知道是否有解决方法?也许某些库可用于具有x-nullable可以添加的供应商特定标志的节点,或者某种方式指定我的非必需字段应该都可以为空.
我是否必须自己写一些带有我的swagger文件的东西,然后在验证器中间件运行之前修改它,或者是否有某些可以建议的解决方法?
Naz*_*gol 14
nullableOpenAPI(fka Swagger)规范v3.0.0中支持字段,但不支持v2.0.可空类型定义如下:
# Can be string or null
type: string
nullable: true
Run Code Online (Sandbox Code Playgroud)
Ser*_*giy 12
SwaggerUI不支持可空类型(请参见此处).但是我使用了可以为空的属性:
type: ['string','null']
Run Code Online (Sandbox Code Playgroud)
之后,此属性从UI中消失,但验证仍然有效.
小智 5
您可以使用默认属性代替在 type 属性中添加 null 。
Swagger.json 属性定义示例:
"due_date": {
"type": "string",
"description": "Due date",
"default": "null"
},
Run Code Online (Sandbox Code Playgroud)
这是一个有效的 Swagger 类型定义,并且在 Swagger UI 中仍按预期显示。
| 归档时间: |
|
| 查看次数: |
11740 次 |
| 最近记录: |