Swaggerui 3不尊重'爆炸:false`为openapi 3 spec中的查询数组参数

发布于 2025-01-23 11:54:50 字数 603 浏览 0 评论 0原文

我在OpenAPI 3规格中定义了一个查询参数,如下所示:

      parameters:
      - in: query
        name: categories
        schema:
          type: array
          items:
            type: string
            enum:
            - category1
            - category2
          style: form
          explode: false

期望是,如果我使用“尝试!”功能并选择类别1和类别2,形成的URL应包含: ?类别= category1,category2

,而是swaggerui形式的URL的一部分如下: ?类别= category1& categories = category2

因此,Swaggerui似乎正在将参数对待,好像爆炸设置为true

如何让Swaggerui使用逗号分隔的配方,因为这就是服务器所期望的?

I have a query parameter defined in the OpenAPI 3 spec as follows:

      parameters:
      - in: query
        name: categories
        schema:
          type: array
          items:
            type: string
            enum:
            - category1
            - category2
          style: form
          explode: false

The expectation is that if I use the "Try it out!" feature and select both category1 and category2, the URL formed should contain:
?categories=category1,category2

However, instead SwaggerUI forms that part of the URL as follows:
?categories=category1&categories=category2

Thus, it seems that SwaggerUI is treating the parameter as though explode is set to true.

How can I get SwaggerUI to go with the comma-separated formulation as that's what the server is expecting?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

厌倦 2025-01-30 11:54:50

问题在于爆炸样式属性应该放置在与>架构 的相同级别上,而不是嵌套在其中。

      parameters:
      - in: query
        name: categories
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - category1
            - category2

The issue was that the explode and style properties should have been placed at the same level as schema, not nested inside of it.

      parameters:
      - in: query
        name: categories
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - category1
            - category2
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文