【问题标题】:How we can ignore the order of query parameter in WireMock我们如何在 WireMock 中忽略查询参数的顺序
【发布时间】:2023-03-23 23:51:01
【问题描述】:

假设我有端点: /url?number="321"&name="TEST" 但是当我们匹配请求时,我们希望忽略查询参数的顺序(忽略查询参数的顺序)

在这种情况下,如果在查询参数标记中传递查询参数,那么我不会区分请求,因为相同的端点但有多个查询参数。

【问题讨论】:

    标签: wiremock stubbing wiremock-standalone


    【解决方案1】:

    在文档中,Regular Expression 部分显示了匹配查询参数的示例。甚至可以包含absence of a parameter

    使用您的示例,它可能看起来像:

    {
      "request" : {
        "urlPath" : "/url",
        "method" : "GET",
        "queryParameters" : {
          "number" : {
            "equalTo" : "321"
          },
          "name" : {
            "equalTo" : "TEST"
          }
        }
      },
      "response" : {
        "status" : 200
      }
    } 
    

    【讨论】:

    • 如果您希望以顺序不变的方式实现对查询参数的匹配,还包括 URL 匹配文档建议仅在路径上匹配可能会有所帮助。 wiremock.org/docs/request-matching/#url-matching
    • 在上面的例子中,如果任何其他查询参数即将到来,那么我们如何在我们的存根中忽略,比如在 post 请求中忽略有效负载中的其他键和值对
    猜你喜欢
    • 2022-11-28
    • 1970-01-01
    • 2020-06-21
    • 2020-02-18
    • 2015-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多