Stubby:对具有不同主体的相同 URL 的 PUT 请求存根
Stubby: stub PUT requests for same URLS with distinct body
我想为同一个 PUT 匹配不同的正文 URL,但是 stubby4j 总是匹配第一种情况,无论正文的内容是什么。
示例:
- request:
url: /individuals/.*/address$
method: PUT
body: >
{
"type": "MOBILE",
(other input fields)
}
response:
status: 400
body: >
{
"type": "BAD_REQUEST",
"message": "Validation error on request."
}
- request:
url: /individuals/.*/address$
method: PUT
body: >
{
"type": "HOME",
(other input fields)
}
response:
status: 200
在这种情况下,无论我请求中的参数 "type" 的值是多少,它总是与第一个存根匹配。
尝试使用 headers 将请求 body 更改为 json 数据。
- request:
url: /individuals/.*/address$
method: PUT
headers:
content-type: application/json
json: '{"type": "MOBILE"}'
response: ...
- request:
url: /individuals/.*/address$
method: PUT
headers:
content-type: application/json
json: '{"type": "HOME"}'
response: ...
抱歉回复晚了。
在最近和当前版本的 stubby4j(即:7.x.x
)中,可以为相同的 PUT
/GET
/POST
/ 匹配不同的主体PATCH
/等网址。
例如,以下是有效的 YAML 配置(为了示例,我稍微简化了 OP 提供的 YAML 配置):
- request:
url: /individuals/.*/address$
method: PUT
post: >
{"type": "MOBILE"}
response:
status: 400
body: >
{"type": "BAD_REQUEST"}
- request:
url: /individuals/.*/address$
method: PUT
post: >
{"type": "HOME"}
response:
body: OK
status: 200
注意事项:
request
没有得到 body
密钥,使用 post
密钥代替 POST/PUT/PATCH 存根您的有效载荷(或者 file
如果您的有效载荷太大了)
body
键只能在 response
中使用,不能在 request
中使用
json
密钥无效且不受 stubby4j 支持
有关 request
和 response
的 YAML 配置的更多信息,请参阅 stubby4j 用户手册:
https://stubby4j.com/docs/http_endpoint_configuration_howto.html
我想为同一个 PUT 匹配不同的正文 URL,但是 stubby4j 总是匹配第一种情况,无论正文的内容是什么。
示例:
- request:
url: /individuals/.*/address$
method: PUT
body: >
{
"type": "MOBILE",
(other input fields)
}
response:
status: 400
body: >
{
"type": "BAD_REQUEST",
"message": "Validation error on request."
}
- request:
url: /individuals/.*/address$
method: PUT
body: >
{
"type": "HOME",
(other input fields)
}
response:
status: 200
在这种情况下,无论我请求中的参数 "type" 的值是多少,它总是与第一个存根匹配。
尝试使用 headers 将请求 body 更改为 json 数据。
- request:
url: /individuals/.*/address$
method: PUT
headers:
content-type: application/json
json: '{"type": "MOBILE"}'
response: ...
- request:
url: /individuals/.*/address$
method: PUT
headers:
content-type: application/json
json: '{"type": "HOME"}'
response: ...
抱歉回复晚了。
在最近和当前版本的 stubby4j(即:7.x.x
)中,可以为相同的 PUT
/GET
/POST
/ 匹配不同的主体PATCH
/等网址。
例如,以下是有效的 YAML 配置(为了示例,我稍微简化了 OP 提供的 YAML 配置):
- request:
url: /individuals/.*/address$
method: PUT
post: >
{"type": "MOBILE"}
response:
status: 400
body: >
{"type": "BAD_REQUEST"}
- request:
url: /individuals/.*/address$
method: PUT
post: >
{"type": "HOME"}
response:
body: OK
status: 200
注意事项:
request
没有得到body
密钥,使用post
密钥代替 POST/PUT/PATCH 存根您的有效载荷(或者file
如果您的有效载荷太大了)body
键只能在response
中使用,不能在request
中使用
json
密钥无效且不受 stubby4j 支持
有关 request
和 response
的 YAML 配置的更多信息,请参阅 stubby4j 用户手册:
https://stubby4j.com/docs/http_endpoint_configuration_howto.html