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

ActiveMQ Artemis Jolokia返回404:curl请求失效但浏览器正常

问题原因及解决办法

出现这个问题的核心是curl请求和浏览器请求的行为存在差异,具体可能是以下几点:

  • URL编码问题
    浏览器会自动对URL中的特殊字符(比如逗号,)做URL编码,但curl默认不会。你可以尝试把MBean名称里的所有逗号替换成%2C,修改后的curl命令如下:
curl -v -H "Origin:http://IP:port" -u user:pass http://IP:Port/console/jolokia/read/org.apache.activemq.artemis%3Abroker%3D0.0.0.0%2Ccomponent%3Daddresses%2Caddress%3D123456%2Csubcomponent%3Dqueues%2Crouting-type%3Danycast%2Cqueue%3D123456/MessageCount
  • Broker名称不匹配
    你命令里指定的broker=0.0.0.0可能和实际Artemis的broker实例名称不符。可以先在浏览器访问http://IP:Port/console/jolokia/list,搜索123456队列对应的MBean完整路径,确认broker的正确名称(比如默认可能是localhost或者自定义的broker名称),再替换到curl命令中。

  • 请求头缺失
    浏览器请求时会自动携带Accept: application/json这类头信息,而你的curl命令没有添加。尝试补充该请求头:

curl -v -H "Origin:http://IP:port" -H "Accept: application/json" -u user:pass http://IP:Port/console/jolokia/read/org.apache.activemq.artemis:broker=0.0.0.0,component=addresses,address=123456,subcomponent=queues,routing-type=anycast,queue=123456/MessageCount
  • 认证方式兼容问题
    虽然你用了-u参数做基本认证,但可以试试把账号密码直接嵌入URL的方式,避免curl的认证处理差异:
curl -v -H "Origin:http://IP:port" http://user:pass@IP:Port/console/jolokia/read/org.apache.activemq.artemis:broker=0.0.0.0,component=addresses,address=123456,subcomponent=queues,routing-type=anycast,queue=123456/MessageCount

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 23:45:41