这些OpenAPI 3路径是否模棱两可?
/shops/{shopId}/pets/{petId}
/shops/{shopId}/pets/_search我想回答no,但是,严格地阅读规范,我无法做出决定,因为它们似乎不属于规范所做的3条语句中的任何一条:
两个路径都不是具体的(在规范中使用的术语) "/shops/{}/pets/{}" != "/shops/{}/pets/_search "
示例。
下面是OA3规范的摘录(仅此而已:我的问题在第一行)。
摘录OA3规范
OpenAPI 3规范(https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md#paths-object)的"Paths对象“段指出(3句,3条语句):
匹配URL时,具体路径(非模板化)路径将在模板对应路径之前进行匹配。具有相同层次结构但不同模板名称的模板路径不能存在,因为它们是相同的。在不明确匹配的情况下,要由工具来决定使用哪个工具。
这3条声明后面跟着3个例子(仅此而已):
假设以下路径为
,如果使用,将首先匹配具体定义/pets/mine:
/pets/{petId}
/宠物/我的
下列路径被认为是相同的和无效的:
/pets/{petId}
/宠物/{name}
以下情况可能导致模棱两可的解决:
/{entity}/me
/book/{id}
发布于 2021-05-04 10:22:53
我对规范的解读是,它们不是模棱两可的,因为其中一种比另一种更具体。如果{petId}参数值设置为_search,则更具体的参数优先。
https://stackoverflow.com/questions/67382759
复制相似问题