使用从请求中捕获的变量作为IntelliJ HTTP客户端中下一个请求的路径的一部分

时间:2019-04-08 18:53:21

标签: http intellij-idea

使用IntelliJ的HTTP客户端,我如何捕获请求的输出,并在路径中将请求的一部分用于后续请求?

第一个请求-捕获session_id

POST http://127.0.0.1:8998/sessions
Content-Type: application/json

{"kind": "spark"}

> {% client.global.set("session_id", response.body.json.session_id); %}

第二个请求-如何在请求的路径中使用捕获session_id

POST http://127.0.0.1:8998/sessions/{{session_id}}/statements
Content-Type: application/json

{"code": "123"}

###
Errors with:
java.lang.IllegalArgumentException: Illegal character in path at index 31.

1 个答案:

答案 0 :(得分:2)

除了从响应正文中读取内容外,您正在做其他所有事情-可能session_id并没有获得您期望的值。

为确认这一点,可以将client.log(client.global.get("session_id"));添加到第二个请求的响应处理程序脚本中(首先从URL中删除var),然后检查“响应处理程序”选项卡。