jmeter:访问特定服务器时 Cookie 为空

问题描述 投票:0回答:4

我正在使用 apache jmeter 来测试我的 java 应用程序。当我在端口 443 上点击 GTM(全局流量管理器:这会将流量路由到特定服务器) url https:// 时,一切正常。 当我尝试使用端口 8080 上的 url http:// 访问部署应用程序的特定服务器时,我收到 401 未经授权的错误,因为 cookie 在请求中为 null。 我该如何解决这个问题?

java cookies jmeter
4个回答
0
投票

当您不提供任何代码/配置时,很难猜测问题是什么。

您可能会因为

same origin policy
而遇到问题(浏览器和工具仅发送属于您发送请求的来源的cookie)。

我猜您正在从

https://someApp.com:443
检索 cookie,并尝试通过
http://someapp.com:8080
重用它们。问题是,它们不是同一来源(端口号被视为原始 URL 的一部分)。

查看此链接:


0
投票

您可以尝试禁用 JMeter cookies 检查:

  1. 暂时(仅一次),通过 -J 命令行参数,例如:

    jmeter -JCookieManager.check.cookies=false -n -t test.jmx -l result.jtl
    
  2. 永久,通过将下一行添加到 user.properties 文件(位于 JMeter 安装的“bin”文件夹中)

    CookieManager.check.cookies=false
    

    需要重新启动 JMeter 才能拾取该属性。

参考资料:


0
投票

请注意,您只有 1 个 Cookie Manager

如果一个 Sampler 范围内有多个 Cookie Manager, 目前还没有办法指定使用哪一个。也 存储在一个 cookie 管理器中的 cookie 不可用于任何其他管理器 管理器,因此请谨慎使用多个 Cookie 管理器


0
投票

在 Jmeter 属性文件中进行以下更改,将解决该问题。 CookieManager.delete_null_cookies=false

© www.soinside.com 2019 - 2024. All rights reserved.