如何通过 AJAX 在 ActiveMQ 中设置 TimeToLive 参数?
Posted
技术标签:
【中文标题】如何通过 AJAX 在 ActiveMQ 中设置 TimeToLive 参数?【英文标题】:How to set TimeToLive Parameter in ActiveMQ via AJAX? 【发布时间】:2012-11-14 07:28:14 【问题描述】:我对 ActiveMQ 和 AJAX 接口有一个关于消息生命周期的问题。在 AMQ Web 界面中,我可以为消息设置 TimeToLive 值(以毫秒为单位)。 我已经发现,我可以通过 REST 使用这个参数:
curl -vd body="test" "http://localhost:8161/demo/message/TESTQUEUE?type=queue&JMSTimeToLive=500&JMSPersistent=-1"
此示例消息将持续 500 毫秒
但是如何使用 AMQ Ajax 接口来设置这些参数呢? 发送消息的 javascript 函数只提供了两个参数
amq.sendMessage(myDestination,myMessage);
信息:http://activemq.apache.org/ajax.html
不幸的是,myDestination 不是 URL,它类似于“queue://”
感谢四位的帮助
问候 罗尔夫
【问题讨论】:
【参考方案1】:AJAX 客户端的当前实现不提供发送带有生存时间的消息的可能性。
消息的离开时间基本上是通过属性“JMSExpiration”在message property(标题)中设置的 目前,如果您查看amq.js code,您会看到没有允许您定义标头或生存时间的 API。
将这个功能添加到客户端应该相对容易。 Check the code,您可能只需为您的应用程序硬编码 TTL。最后,它只是执行一个 post 命令,就像您执行 REST 调用一样。
【讨论】:
以上是关于如何通过 AJAX 在 ActiveMQ 中设置 TimeToLive 参数?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Spring Boot 中设置 ActiveMQ 端口?