【问题标题】:jmeter - how to use Apache htpasswd in jmeterjmeter - 如何在 jmeter 中使用 Apache htpasswd
【发布时间】:2014-10-20 20:58:46
【问题描述】:

我是第一次尝试 jmeter。我必须使用 Apache htpasswd 对具有身份验证控制的站点进行负载测试。我尝试设置 http 授权管理器,但我一直收到此错误

标头大小(以字节为单位):291 正文大小(以字节为单位):491 样本数:1 错误计数:1 响应代码:401 响应消息:需要授权

我已经在授权管理器中给出了站点名称、用户名、密码。我错过了什么吗?

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    您确定这真的是基本身份验证吗?你怎么知道的?如果您将用户名和密码注入 URL 会发生什么

    http://username:password@site/path
    

    如果结果与 401 不同,您可以尝试提供 Base URL(包括路径)以及凭据。

    有关如何为基本身份验证质询正确配置 HTTP 授权管理器的更多详细信息,请参阅 How to use HTTP Basic Authentication in JMeter 指南。

    万一出现问题,您也可以使用HTTP Header Manager。查看 HTTP 请求详细信息,基本 HTTP 身份验证会产生以下 HTTP 标头:

    • 名称:授权
    • 值:基本 [Base64 编码的用户名:密码] 字符串

    因此您可以按如下方式构造正确的授权标头:

    1. 将 HTTP 标头管理器添加到您的计划中
    2. 将“授权”放入“名称”字段
    3. 将“Basic”放入值字段(在basic后面注明空格
    4. 现在您需要知道以冒号分隔的用户名和密码对的 Base64 编码值。为了知道这
      • 导航到https://www.base64encode.org/
      • 将您的凭据作为“用户名:密码”(不带引号)输入表单,然后单击“编码”按钮
      • 将生成的编码值附加到 HTTP Header Manager 的“Value”节,在“Basic”之后

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      谢谢!那个解决方案

      http://username:password@site/path 
      

      工作。它实际上给了我一个“:”的无效字符错误,我不得不用 %3A (http://en.wikipedia.org/wiki/Percent-encoding) 替换 : 并且它起作用了。再次感谢!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-24
        • 1970-01-01
        • 1970-01-01
        • 2017-02-05
        • 2016-02-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多