gpt4 book ai didi

scala - Gatling:当上一个请求没有 JSON 响应时,如何在下一个请求中传递值?

转载 作者:行者123 更新时间:2023-12-02 03:11:25 24 4
gpt4 key购买 nike

请考虑场景... 在这里,在 GET 请求中我找到了“derId”,但它的响应不是 JSON。 所以我无法在那个请求中保存这个值。

    .exec(http("OnClick")
.get("/url/apz?action_id=1&SelectRadiobutton=1_${abcID}_${xyzID}_${zipID}")
.headers(headers_1))
.pause(2)
.exec(http("PopUp")
.post("/url/dis")
.headers(headers_1)
.formParam("action_id", "2")
.formParam("abcId", "${abcID}")
.formParam("rmft", "${rmftID}")
.formParam("msg_id", "${msgID}")
.formParam("matId", "${matID}"))
.pause(1)
.exec(http("Bananana")
.post("/url/abc")
.headers(headers_1)
.formParam("abcId", "${abcID}")
.formParam("msg_id", "${msgID}")
.formParam("matId", "${matID}")
.formParam("derId", "${??}"))

是否有任何方法或方式可以在 GET 请求的下一个请求中传递值???

或者

当请求没有 JSON 响应时如何保存值???

GET 请求可以有 JSON 响应吗???

非常感谢您的帮助。

谢谢!

最佳答案

我能够使用来自类似问题的答案 ( https://stackoverflow.com/a/40736282/9371636 ) 发出请求,然后使用来自第一个请求的 JSON 响应的输入参数发出另一个请求。

我正在测试的示例 API:

/step1 -> returns { "key": 888 }
/step2/{key} -> returns { "key": 999 } if {key} passed in is == 888

Scala 代码:

var step1 = exec(http("step1")
.get("/step1")
.check(jsonPath("$..key").optional.saveAs("key")))

var step2 = exec(http("step2")
.get("/step2/${key}"))

val scn: ScenarioBuilder = scenario("SimulationName").exec(step1,
doIf(session => session.contains("key")) {
exec(step2)
})

关于scala - Gatling:当上一个请求没有 JSON 响应时,如何在下一个请求中传递值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39748780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com