如何设置路径以使用参数引用并覆盖名称 属性?
How can I setup a path to use a parameter reference and override the name property?
我有多个路径需要 ID 号。有些路径需要多个id。
我知道在构建路径时可以引用参数
paths:
/path1/{path1ID}
parameters:
- $ref: '#/components/parameters/path1ID_param'
components:
parameters:
path1ID_param:
name: path1ID
in: path
schema:
type: integer
如果我这样做,我将有很多重复的定义,其中唯一的变化是名称。这格格。
有什么方法可以覆盖路径定义中的名称吗?我已经尝试了 allOf
的变体,但还没有找到任何东西。我搜索了 swagger 文档,但运气不佳。我在这里搜索并发现了很多有趣的指示,帮助我完善了我的 API ...但我没有发现与我正在尝试做的事情相关的任何内容。
是否可以这样做?
paths:
/path1/{path1ID}
parameters:
- $ref: '#/components/parameters/parmID_param/'
- name: path1ID
/path1/{path1ID}/subpath2/{subpath2ID}
- $ref: '#/components/parameters/parmID_param/'
- name: path1ID
- $ref: '#/components/parameters/parmID_param/'
- name: subpath2ID
components:
parameters:
path1ID_param:
name: path1ID
in: path
schema:
type: integer
不支持。
从 OpenAPI 3.1 开始,您只能覆盖引用参数的 description
,而不能覆盖其 name
或其他属性(required
、style
等.).
以下是 OpenAPI 规范存储库中的现有功能请求:
我有多个路径需要 ID 号。有些路径需要多个id。
我知道在构建路径时可以引用参数
paths:
/path1/{path1ID}
parameters:
- $ref: '#/components/parameters/path1ID_param'
components:
parameters:
path1ID_param:
name: path1ID
in: path
schema:
type: integer
如果我这样做,我将有很多重复的定义,其中唯一的变化是名称。这格格。
有什么方法可以覆盖路径定义中的名称吗?我已经尝试了 allOf
的变体,但还没有找到任何东西。我搜索了 swagger 文档,但运气不佳。我在这里搜索并发现了很多有趣的指示,帮助我完善了我的 API ...但我没有发现与我正在尝试做的事情相关的任何内容。
是否可以这样做?
paths:
/path1/{path1ID}
parameters:
- $ref: '#/components/parameters/parmID_param/'
- name: path1ID
/path1/{path1ID}/subpath2/{subpath2ID}
- $ref: '#/components/parameters/parmID_param/'
- name: path1ID
- $ref: '#/components/parameters/parmID_param/'
- name: subpath2ID
components:
parameters:
path1ID_param:
name: path1ID
in: path
schema:
type: integer
不支持。
从 OpenAPI 3.1 开始,您只能覆盖引用参数的 description
,而不能覆盖其 name
或其他属性(required
、style
等.).
以下是 OpenAPI 规范存储库中的现有功能请求: