Wiremock url 匹配 - "null. When using a regex, "?" 应该是 "\\?"。URL 必须以 /" 开头
Wiremock url matching - "null. When using a regex, "?" should be "\\?". URLs must start with a /"
我有一个url模式:
"urlPattern" : "^\/blah\/players\/1000\/game\/tickets\?drawFrom=(.*)&drawTo=(.*)&take=10&skip=0"
但是当尝试匹配它们时,我得到 "Request not matched" 和这个错误
<<<<< null. When using a regex, "?" should be "\?". URLs must start with a /
url 正则表达式也在终端中显示为
^\/blah\/players\/1000\/game\/tickets\?drawFrom=(.*)&drawTo=(.*)&take=10&skip=0
我使用的是 \?
而不是 \?
,所以我对问题可能出在哪里感到困惑。我还在其他工作正常的地方使用了几乎相同的正则表达式。
编辑:这是实际请求的样子
/blah/players/1000/game/tickets?drawFrom=2018-01-01&drawTo=2018-02-02&take=10&skip=0
您的错误是因为 URL 不需要前面的 ^
,因为 WireMock 知道 URL 以 /
开头。此外,您不需要转义 /
个字符。
这应该有效:
"urlPattern" : "/blah/players/1000/game/tickets\?drawFrom=(.*)&drawTo=(.*)&take=10&skip=0"
我有一个url模式:
"urlPattern" : "^\/blah\/players\/1000\/game\/tickets\?drawFrom=(.*)&drawTo=(.*)&take=10&skip=0"
但是当尝试匹配它们时,我得到 "Request not matched" 和这个错误
<<<<< null. When using a regex, "?" should be "\?". URLs must start with a /
url 正则表达式也在终端中显示为
^\/blah\/players\/1000\/game\/tickets\?drawFrom=(.*)&drawTo=(.*)&take=10&skip=0
我使用的是 \?
而不是 \?
,所以我对问题可能出在哪里感到困惑。我还在其他工作正常的地方使用了几乎相同的正则表达式。
编辑:这是实际请求的样子
/blah/players/1000/game/tickets?drawFrom=2018-01-01&drawTo=2018-02-02&take=10&skip=0
您的错误是因为 URL 不需要前面的 ^
,因为 WireMock 知道 URL 以 /
开头。此外,您不需要转义 /
个字符。
这应该有效:
"urlPattern" : "/blah/players/1000/game/tickets\?drawFrom=(.*)&drawTo=(.*)&take=10&skip=0"