Swagger / Open API 2.0 我可以声明通用响应标头吗?

2024-03-27

是否可以声明一个自定义响应标头,该标头将出现在所有响应中,而无需将其复制到每个响应结构中?


这在 OpenAPI 3.0 中有所改进 – 您现在可以在全局中定义通用标头components/headers部分然后$ref这些定义而不是重复内联定义。你也可以$ref整个响应(例如 400)以减少代码重复。然而,仍然有无法为所有路径设置通用标头 https://github.com/OAI/OpenAPI-Specification/issues/690– 您需要在每个响应中明确列出标头。

openapi: 3.0.1
...
paths:
  /:
    get:
      responses:
        '200':
          description: OK
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
  /something:
    get:
      responses:
        '200':
          description: OK
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'

components:
  headers:
    X-RateLimit-Limit:
      description: Request limit per hour
      schema:
        type: integer
      example: 100
    X-RateLimit-Remaining:
      schema:
        type: integer
      example: 96
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Swagger / Open API 2.0 我可以声明通用响应标头吗? 的相关文章

随机推荐