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

JMeter无法录制浏览器次级窗口,录制时弹窗显示404错误

解决JMeter录制时次级Java Applet窗口404错误的问题

我之前碰到过类似的情况,JMeter录制主页面正常,但涉及Java Applet的次级窗口就出404,大概率是流量没走JMeter代理或者证书/路径配置的问题。给你几个实用的排查和解决方向:

  • 确保Java Applet流量走JMeter代理
    Java Applet是依托JRE运行的,默认不会自动继承浏览器的代理设置。你可以这么操作:

    • 打开Java控制面板(Windows在控制面板里找,Mac在系统偏好设置),进入「网络设置」,手动设置HTTP代理为localhost:8888(就是你JMeter录制用的代理端口)。
    • 或者直接修改JRE目录下的lib/net.properties文件,找到http.proxyHost和http.proxyPort,把值改成JMeter的代理地址和端口,保存后重启JRE。
  • 检查JMeter录制的路径规则
    默认的JMeter录制模板可能没包含Java Applet相关的资源请求(比如.class、.jar文件)。你可以打开「HTTP(S) Test Script Recorder」,在「URL Patterns to Include」里添加以下规则:

    .*\.class
    .*\.jar
    

    这样JMeter就能捕获到Applet加载所需的资源请求了。

  • 给Java环境安装JMeter的根证书
    浏览器装了JMeter证书不代表Java环境也认,Applet的HTTPS请求如果因为证书不被信任,可能会伪装成404错误。操作步骤:

    1. 找到JMeter bin目录下的ApacheJMeterTemporaryRootCA.crt文件。
    2. 打开命令行,执行以下命令(替换成你的JRE路径):
      keytool -import -alias jmeter -file ApacheJMeterTemporaryRootCA.crt -keystore "C:\Program Files\Java\jre1.8.0_301\lib\security\cacerts"
      
    3. 输入默认密码changeit,然后确认导入证书。
  • 对比正常请求和录制请求的路径差异
    先关掉JMeter代理,正常打开次级窗口,用浏览器F12的「网络」面板查看真实的请求URL。然后打开JMeter录制,再触发次级窗口,对比两者的请求路径是否一致。如果JMeter把绝对路径改成了相对路径,导致资源找不到,你可以手动在JMeter里修正请求的URL。

  • 用开发者工具辅助补全请求
    如果录制始终有问题,不如直接用浏览器开发者工具把Applet相关的请求都抓下来,然后在JMeter里手动添加这些HTTP请求,配置好参数和请求头,这样也能达到录制的效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 10:11:44