【发布时间】:2018-01-17 03:46:56
【问题描述】:
【问题讨论】:
【问题讨论】:
您不能,控制台提供的消息发送功能非常有限。如果您想发送完整的消息,请使用 JMS 客户端。
【讨论】:
您可以使用JMSToolBox 之类的应用程序
【讨论】:
在这种情况下不能使用 Activemq 控制台,但您可以使用 curl 命令发送带有暴露 Web 控制台 API 的标头的消息。请参考以下链接:
例如,使用下面的命令,使用属性“key=2dffvdfbfd”
curl -XPOST -d "body=Test message" -d "key=2dffvdfbfd" http://admin:admin@<brokerIp>:8161
【讨论】:
http://admin:admin@<brokerIp>:8161/api/message?destination=<queue:topic>://<destination-name>。这确实允许提供额外的 JMS 属性。
destinationJMS 属性可以在 URI 中提供或作为表单数据(您的选择)提供,但 URI 中的尾随 /api/message 是强制性的。
Web 控制台不允许发送自定义 jms 标头或属性。
所以,你需要使用rest api:
http://activemq.apache.org/rest.html
以下 curl 对我有用:
{'a': 'b'}
curl -H 'Authorization: Basic YWabcdefg==' \
-d "body={'a': 'b'}" \
-d "JMSCorrelationID=9999" \
-d "JMSReplyTo=NickFury" \
-d "SomeProperty=SomeValue" \
http://localhost:8161/api/message/avenger_tasks?type=queue
或者使用用户名和密码
curl -u admin:admin \
-d "body={'a': 'b'}" \
-d "JMSCorrelationID=9999" \
-d "JMSReplyTo=NickFury" \
-d "SomeProperty=SomeValue" \
http://localhost:8161/api/message/avenger_tasks?type=queue
【讨论】: