如何在 Wiremock 查询参数中传递数组

How to pass an array in Wiremock query parameters

现在已经有几天了,我一直在使用 Wiremock。我不知道如何在 GET 方法中发送数组参数。 我想发送这个 GET http://localhost/test?filter[]=full&token=any。 所以我的 json 看起来像那样

{
    "request": {
        "method": "GET",
        "urlPath": "/test?filter[]=full",
        "queryParameters": {
             "token": {
                 "matches": "^[A-Za-z0-9-_=.]*$"
             }
        }
    },
    "response": {
        "status": 200
    }
}

但是我得到了一个错误,这里是错误响应

| Closest stub                                             | Request                                                  |
-----------------------------------------------------------------------------------------------------------------------
                                                           |
GET                                                        | GET
/test?filter[]=full                                        | /test?filter[]=full&token=eyJhbGciOiJIUzI1NiIsInR5cCI6Ikp<<<<< URL does not match
                                                           | XVCJ9.eyJpYXQiOjE1MTYyMzkwMjJ9.tbDepxpstvGdW8TC3G8zg4B6rU
                                                           | YAOvfzdceoH48wgRQ
                                                           |
Query: token [matches] ^[A-Za-z0-9-_=.]*$                  | token:
                                                           | eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE1MTYyMzkw
                                                           | MjJ9.tbDepxpstvGdW8TC3G8zg4B6rUYAOvfzdceoH48wgRQ
                                                           |
                                                           |
-----------------------------------------------------------------------------------------------------------------------

所以如果有人知道如何使用 GET 方法发送数组参数,我将不胜感激。

谢谢

问题是您将查询参数放在 URL 路径中:

"urlPath": "/test?filter[]=full"

您需要做的是将 filter[] 移动到查询参数块中:

{
  "request": {
    "method": "GET",
    "urlPath": "/test",
    "queryParameters": {
      "token": {
        "matches": "^[A-Za-z0-9-_=.]*$"
      },
      "filter%5B%5D": {
        "equalTo": "full"
      }
    }
  },
  "response": {
    "status": 200
  }
}