专业版
开源
通过 OpenAPI 和 AsyncAPI,以质量和一致性加速 API 开发。
通过项目、样式检查和可重用域标准化您的 API。
适用于个人和小型团队,用于设计、构建和文档化 API。
API 的一个常见用例是,其调用的参数可能具有预定义值。以分页为例,该调用允许您请求查询结果的特定页面。作为生产者,您可能允许消费者设置每页的条目数,但您也希望允许消费者在每次请求时无需发送预定义数量的条目。
这就是默认值的作用。在 Swagger 规范中,默认允许您为参数、模型(及其属性)或响应头(承载对象)设置值。当客户端或服务器省略这些值时,接收端应假定为默认值。
默认关键字的值在 Swagger 规范中略显独特。它被定义为任意类型,但旨在“复制”其承载对象的类型。因此,如果您有一个字符串类型的参数,则默认的值也应为字符串。显然,不匹配的类型没有意义,因为您将声明属性的默认值与允许的类型不同。对于复杂类型的请求体参数,默认可以表示一个复杂的默认值。数组类型的承载对象也应具有数组结构作为其默认值。
您可以在规范的以下位置找到默认属性:
定义该值有以下几个好处:
使用默认值时可能存在两种差异:
我们还有默认关键字的另一种用途,它非常不同。它可以在响应部分中使用,以提及 API 的通用响应。通常,您会描述成功的响应,但有时您可能有一种通用的方式来暴露错误,无论使用哪种 HTTP 状态码。在这种情况下,您可以使用默认响应并提供其使用的通用结构。
有关更多信息,请查看规范中的相关部分 - https://swagger.org.cn/specification/#responsesDefault。