如何在OpenAPI(Swagger)中参数化API基本路径?

Rad*_*ad4 5 swagger openapi

我有这样的网址:

/id/{idnumber}/status
Run Code Online (Sandbox Code Playgroud)

在此URL中,/id/{idnumber}是API基本路径,/status也是资源。


我知道OpenAPI(Swagger)允许在路径中添加参数,如下所示:

/id/{idnumber}/status
Run Code Online (Sandbox Code Playgroud)

但这不是我所需要的,因为/id/{idnumber}它是基本路径,而不是重新分配路径的一部分。

有什么办法可以在基本路径中有参数吗?

paths:
  /id/{number}/status:
Run Code Online (Sandbox Code Playgroud)

Hel*_*len 5

现在,使用服务器变量在OpenAPI 3.0中支持参数化的基本路径:

openapi: 3.0.0
...

servers:
  - url: https://my.api.com/id/{number}
    variables:
      number:
        default: '-1'
Run Code Online (Sandbox Code Playgroud)

请注意,服务器变量必须具有default值-如果客户端不提供值,则将使用它。

有关详细信息,请参阅:


Wil*_*eng 1

我认为不允许basePath变量。

对于您的情况,您不需要使用basePath. 您只需将 /id/{idnumber} 放入 URL 路径即可。例如:

    "/pet/{petId}": {
Run Code Online (Sandbox Code Playgroud)