【问题标题】:Supporting two different request bodies at the same endpoint在同一个端点支持两个不同的请求体
【发布时间】:2017-05-16 08:33:55
【问题描述】:

我需要为同一端点和同一方法 (POST) 支持两种请求体。在 Swagger 中可以吗?

这很重要,因为两个请求正文都是有效的,用户可以发送其中任何一个。更具体地说,

RequestBody 1:

{
    param1: value1
    param2: value2
    param3: {
        param3Key1:  x1
        param3Key2:  x2
        ...
    }
}

RequestBody 2:

{
    param1: value1
    param2: value2
    param4: {
        differentKey1:  y1
        differentKey2:  y2
        ...
    }
}

有没有办法在 Swagger 中记录这种情况?

一种方法是在文档中同时保留 param3 和 param4。但是,我希望用户明确知道只需要通过其中一个。对于这两种情况,我希望有一个完全不同的请求主体。

【问题讨论】:

    标签: documentation swagger swagger-2.0 swagger-editor


    【解决方案1】:

    找不到直路。这是我现在正在遵循的解决方法:

    假设端点是/endpoint。我可以在 swagger-ui 中通过附加 # 后跟一个字符串来创建 2 个端点:

    /endpoint#1

    /endpoint#2

    然后我可以在每个端点下分别定义我的两个请求体。 swagger 中的 curl 命令将隐藏哈希 - 因此,两个端点基本相同。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-11
      • 1970-01-01
      • 2022-11-30
      • 1970-01-01
      • 2019-12-07
      相关资源
      最近更新 更多