繁体   English   中英

如何使用 JSR223 PreProcessor 使用 jmeter 捕获 cookie 值?

[英]How to capture cookie value using JSR223 PreProcessor using jmeter?

传递的动态 cookie 参数(token_id、access_id、state)值未显示在任何响应中,这使得在进一步请求时难以捕获和传递它。 有人可以帮我吗?

您是否尝试过开箱即用的Cookie 管理器 它像 web 浏览器一样存储和发送 cookies。 如果您有一个 HTTP 请求并且响应包含一个 cookie,则 Cookie 管理器会自动存储该 cookie 并将其用于该特定 web 站点的所有未来请求。 每个 JMeter 线程都有自己的“cookie 存储区”。

如果要使用 JSR223 处理 cookies,则必须使用后处理器。 在发送请求之前执行预处理器 因此,您无权访问预处理器中的响应值。

如果您真的想操作 cookies, API 文档将很有用。

  1. 最简单的选择是HTTP Cookie Manager

    • 将其添加到您的测试计划中

    • 将下一行添加到user.properties文件(位于 JMeter 安装的“bin”文件夹中):

       CookieManager.save.cookies=true
    • 重启 JMeter 取零

    • 就是这样,您应该能够在需要时以${COOKIE_token_id}${COOKIE_access_id}等方式访问您的 cookies

  2. 如果您仍想使用 JSR223 PreProcessor,您可以使用prev.getResponseHeaders() function 从上一个请求中提取 cookies,但是您需要执行一些额外的编码才能:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM