【问题标题】:403 forbidden error in jmeter but api works fine in postmanjmeter中的403禁止错误,但api在邮递员中工作正常
【发布时间】:2019-08-26 06:45:04
【问题描述】:

我有一个以 GET 方法运行的 API。它在带有200 状态码的邮递员中运行良好。但是当我尝试在 jmeter 中运行 API 时,它会抛出 403 禁止错误。我已经配置了调试采样器并尝试重新运行测试。调试采样器通过200,但http请求仍然失败。

  1. 我曾尝试关联,但即使这样也失败了。
  2. 我从 HTTP 请求中删除了端口号,它仍然失败。
  3. 我添加了授权管理器,输入用户名和密码还是失败。
  4. 脚本中添加了 HTTP cookie 管理器和缓存管理器。

【问题讨论】:

    标签: jmeter postman


    【解决方案1】:

    根据HTTP Status Code 403描述

    HTTP 403 Forbidden client 错误状态响应码表示服务器理解请求但拒绝授权。

    此状态类似于401,但在这种情况下,重新认证不会有任何区别。该访问被永久禁止并与应用程序逻辑相关联,例如对资源的权限不足。

    您很可能在来自 Postman 和来自 JMeter 的请求之间存在不一致。

    有两种可能的原因:

    1. 您未能正确配置 JMeter 的 HTTP Request 采样器。鉴于您的请求在 Postman 中运行良好,您可以尝试使用 JMeter 的 HTTP(S) Test Script Recorder 记录它

      • 准备 JMeter 进行记录。最简单的方法是JMeter Templates Feature

        • 从 JMeter 的主菜单中选择 File -> Templates -> Recording 并单击“创建”
        • 打开 HTTP(S) 测试脚本记录器并点击“开始”
      • 准备 Postman 进行录制。

        • 在设置页面将代理主机设置为127.0.0.1,端口设置为8888

      • 在 Postman 中执行请求

    2. Postman 使用无法记录和重放的特定 Authorization 标头。查看请求的Authorization 选项卡并检查使用了哪个选项卡,一旦你弄清楚 - 在 JMeter 中实现相同的:

    【讨论】:

      【解决方案2】:

      状态码 403 表示您无权访问它,因此请确保您为 GET 调用使用了正确的授权。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-11-02
        • 2017-06-19
        • 1970-01-01
        • 1970-01-01
        • 2017-08-16
        • 2020-05-25
        • 1970-01-01
        相关资源
        最近更新 更多