使用 wiremock 如何匹配 POST 主体中的 wiremock 服务器 URL?

With wiremock how can I match against the wiremock server URL in the body of a POST?

我将 Wiremock 与调用 OSISoft PI Web API 的客户端一起使用,并且我在将 POST 正文匹配到定义为 here 的请求时遇到了问题,与 Wiremock 一样POST 主体将有一个 URL 包含随机生成的端口。例如

{
  "1": {
    "Method": "POST",
    "Resource": "http://localhost:24353/piwebapi/assetdatabases/D0NxzXSxtlKkGzAaZhKOB-KABJ2buwfWrkye3YhdL2FOUAUEhMQUZTMDRcQgYUUEVSRk9STUFOQ0UgVEVTVElORw/elements",
    "Content": "{\"Name\":\"New Element\"}"
  }
}

如何匹配 Resource 元素中的 URL,其中端口号将在测试运行之间更改?显然,我不能像处理响应那样对请求使用模板。

通过查看 request matching 上的文档,我发现使用带占位符的 equalToJson 或带正则表达式的 matchesJsonPath 可能是一种选择,但我不清楚确切的语法.还是我缺少更简单的选项?

来自wiremock-userGoogle组

If you don't need to match anything in particular for that element you could use a JSON placeholder e.g. "Resource": "${json-unit.any-string}".

If you do need to match the part after the port number then you can use the regex form e.g.: "Resource": "${json-unit.regex}.*/piwebapi/assetdatabases/D0NxzXSxtlKkGzAaZhKOB-KABJ2buwfWrkye3YhdL2FOUAUEhMQUZTMDRcQgYUUEVSRk9STUFOQ0UgVEVTVElORw/elements"}"