【问题标题】:JMeter 403 ForbiddenJMeter 403 禁止
【发布时间】:2019-08-24 13:55:32
【问题描述】:

我对 JMeter 有疑问。当我尝试发送一些请求时,它会返回一个 403 Forbidden 状态码。我知道它需要身份验证,我已经看到了很多关于它的事情。

我正在使用 Apache ActiveMQ Artemis。我需要执行一些 API 请求,它会删除队列中的所有消息。 API 如下所示:

http://10.2.5.23:8161/console/jolokia/exec/org.apache.activemq.artemis:broker=%220.0.0.0%22,component=addresses,address=%22TEST.GSH%22,subcomponent=queues,routing-type=%22anycast%22,queue=%22TEST.GSH%22/removeAllMessages()

当我尝试执行它时,它会返回一个 403 Forbidden 状态码。我尝试添加 HTTP 授权管理器,添加此 url 并输入用户名和密码,但它仍然给我相同的输出。

这是我登录的地方,我也在 HTTP 授权管理器中添加了这个并设置了用户名和密码。 http://10.2.5.23:8161/console/login

任何想法或建议都会帮助我。

我知道这里有类似我的问题,但我还没有找到对我有帮助的问题。

【问题讨论】:

  • 我添加了一个基本编码的授权标头,但现在它显示:非 HTTP 响应代码:java.net.URISyntaxException
  • 为什么要用JMeter调用removeAllMessages管理方法?您是否正在运行性能测试以查看执行此管理方法需要多长时间?如果有,为什么?
  • 队列填得很快,大部分信息并不重要,为此我必须删除所有消息。
  • 你到底在测试什么?我之所以问,是因为调用removeAllMessages 通常是一种人为的方式来处理在“正常”生产情况下不会执行的消息积累。通常,客户端实际上会使用这些消息。
  • 我会尝试解释我在做什么。我们有一个推送服务,它将太多的测试信息推送到队列中。例如,我必须更新数据库中的某个表,然后它应该推送到队列中,并且我必须验证来自 db 的信息是否被正确推送。我真的不知道是否有人这样做,或者我是否这样做可能是错误的。

标签: api jmeter http-status-code-403 activemq-artemis


【解决方案1】:

答案很简单。我刚刚在 HTTP 标头管理器中添加了使用基本编码的授权。现在它工作正常。但是我有一个问题,为什么 HTTP 授权管理器不起作用?为什么我应该在标题中添加授权?我不能只使用 HTTP 授权管理器吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-18
    • 2013-02-09
    • 2012-07-29
    • 2012-01-08
    • 2017-01-20
    • 2019-06-07
    相关资源
    最近更新 更多