【问题标题】:Swagger UI/Swashbuckle response description with caret not rendering correctly带有插入符号的 Swagger UI/Swashbuckle 响应描述未正确呈现
【发布时间】:2017-01-20 21:30:39
【问题描述】:

我在 .Net 项目中使用带有 Swagger UI 的 Swashbuckle。我在控制器上使用以下属性。

[SwaggerResponse(HttpStatusCode.OK, "IEnumerable<EmployeeModel>", typeof(IEnumerable<EmployeeModel>))]

生成的 JSON 文档会生成以下内容:

"responses": {
          "200": {
            "description": "IEnumerable<EmployeeModel>",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/ResourceModels.EmployeeModel"
              }
            }
          },
          "400": {
            "description": "BadRequest"
          }
        }

然而,Swagger UI 仅显示 IEnumerable 并删除 &lt;EmployeeModel&gt;。我确信插入符号是罪魁祸首。有解决办法吗?

【问题讨论】:

  • 最好完全删除此描述,因为响应不是IEnumerable&lt;EmployeeModel&gt;,而是架构已经描述的EmployeeModel 数组。
  • IEnumerable 是一个集合,而不是一个数组。虽然返回的 JSON 类型是一个数组(如文档中所述),但端点返回一个集合。
  • 我知道,但对于您的消费者来说,他们可能不会“谈论”.NET,它只是一个数组。

标签: swagger swagger-ui swashbuckle


【解决方案1】:

根据 Swagger:

这实际上是描述中的一个错误。该字段是 gfm,这意味着 中的任何内容都将被视为 html,因此如果您希望这些字符出现,则需要对其进行转义。

【讨论】:

    猜你喜欢
    • 2020-09-15
    • 1970-01-01
    • 1970-01-01
    • 2019-07-16
    • 1970-01-01
    • 2019-02-06
    • 2017-07-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多