You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JMeter中从GET请求捕获reCaptcha响应值用于POST请求

JMeter 捕获并传递reCaptcha关联参数操作方法

按以下步骤配置即可完成参数的自动捕获与传递:

  • 调整请求顺序:确认返回reCaptcha值的GET请求,在提交联系表单的POST请求之前,请求层级、间隔时间和真实业务操作路径保持一致,避免因请求顺序异常触发站点反爬规则。
  • 选择对应后置处理器提取参数:
    选中上述GET请求,根据响应格式选择后置处理器:
    • 若响应为非结构化文本/HTML格式,添加正则表达式提取器,通用配置参考:
      • 引用名称:recaptcha_val(自定义变量名,后续传参调用使用)
      • 正则表达式:根据实际响应内容编写,例如响应中reCaptcha字段为<input type="hidden" name="recaptcha" value="(.*?)">,则正则填该段内容,将捕获组()对准需要提取的token值
      • 模板:$1$
      • 匹配数字:1(取第一个匹配结果)
      • 缺省值:extract_fail(调试阶段用于快速定位提取失败问题)
    • 若响应为标准JSON格式,添加JSON提取器,通用配置参考:
      • 引用名称:recaptcha_val
      • JSON Path表达式:按照reCaptcha字段的JSON层级填写,例如响应为{"result":{"captchaToken":"xxx"}}则填$.result.captchaToken
      • 匹配数字:1
  • 验证提取结果:在GET请求后添加调试取样器,配合查看结果树运行单次脚本,确认调试取样器响应中recaptcha_val变量的值,和GET响应返回的reCaptcha值完全一致,再进行后续配置。
  • 传递参数到POST请求:
    打开联系表单POST请求的配置面板,根据接口的提交格式填入提取到的变量:
    • 表单提交(application/x-www-form-urlencoded/multipart/form-data):在参数列表新增对应reCaptcha参数,参数名以抓包得到的实际字段名为准(常见字段名包括g-recaptcha-response、recaptchaToken等),参数值填${recaptcha_val}
    • JSON提交:在请求体JSON的对应字段位置填入"recaptchaToken": "${recaptcha_val}"即可

注意:上述关联方式仅适用于测试环境关闭reCaptcha服务端校验、或站点自研测试专用验证码的场景。官方版本的Google reCaptcha v2/v3自带人机校验逻辑,无法通过简单参数提取绕过正式环境校验,压测前请提前在测试环境配置验证码白名单、专用测试密钥,避免触发拦截。

内容的提问来源于stack exchange,提问作者Everest

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 07:36:22