是否可以定义可重复使用的路径操作?

Is it possible to to define a re-usable path operation?

我们正在向我们的 Swagger API 添加 CORS 支持,其中包括为每个路径定义一个选项操作。由于这是样板代码,我们希望在定义部分中定义一次选项操作,例如

"definitions":{  
 "CORS":{ .. }
 }

然后像这样在我们的路径中引用操作

"paths":{  
      "/system/info":{  
        "options" : {
           "$ref": "#/definitions/CORS"
       }
    }
}

当我们上传 swagger 定义时,这似乎不起作用。实现一次定义路径操作然后跨路径重复使用它的目标的正确方法是什么?

您可以引用外部位置的完整路径:

"paths": {
  "/system/info": {
    "$ref": "cors.json"
  }
}

但不是单独的 http 方法。此外,该规范不允许路径的相对引用——您必须将其放在单独的文档中。

有关 top-level swagger 对象,请参阅 here for information on the path item object, and here