尝试删除预定的消息时遇到了一些麻烦。我正在使用带有stompit的nodejs。以下是我的功能,它应该从队列中删除所有消息。我根据文档设置了标题。 ActiveMQ的响应是“发送消息”,但我没有看到消息被删除。
/** @method remove
* Removes a JOB from our ActiveMQ instance
* @param {object} text JSON object containing the details of the ticket to be created
* @param {string} topic Topic to send message to.
* @param {boolean} redelivered Mark if message has been redelivered.
* @return {Promises} On resolve it returns a response, on reject it returns an error.
*/
remove: function(text, schedulerOptions) {
var servers = [server1, server2];
var headers = {
'destination': 'AMQ_SCHEDULER_MANAGEMENT_DESTINATION',
'content-type': 'application/json',
'persistent': sails.config.activemq.environments[thisEnv].persistent,
'AMQ_SCHEDULER_ACTION' : 'AMQ_SCHEDULER_ACTION_REMOVEALL',
};
pri.sendMessage(servers[index], headers).then(function(response){
sails.log.debug("Message sent!");
sails.log.debug(response);
return resolve("Message Sent");
}, function(error){
//retry with the second activemq IP
index = 1;
pri.sendMessage(servers[index], headers).then(function(response){
return resolve("Message Sent");
}, function(error){
rejection.message +='Error Connecting to Queue';
return reject(rejection);
});
});
});
事情是没有任何反应。我还尝试删除具有特定jobid的特定消息,但该消息也无效。
如果有人能指出我做错了什么,我将非常感激。
谢谢。