stomp.ack 产生错误:收到消息 ID 的意外 ACK

Zee*_*mon 6 activemq-classic stomp websocket node.js

我尝试了可能的组合并在互联网上搜索,但无法完成此操作,错误是:

错误:收到消息 ID 的意外 ACK

如果有人能指出以下代码中是否存在一些概念错误,这将非常有帮助:

var Stomp = require('stomp-client');
var client = new Stomp(host, port, user, pass);
client.connect(function(sessionId) {
    var subId = client.subscribe(/topic/foo, function(body, headers) {
        client.ack(headers['message-id'], subId);
        var message = ['abc', 'def'];
        client.publish(`/topic/bar`, `some_message`);
    }, {ack: 'client'});
    client.on('error', function(er) {
        console.error(er);
    });
});
Run Code Online (Sandbox Code Playgroud)

473*_*469 3

您可能正在使用 stomp-1.2,其中确认标头不是message-id(stomp-1.0),而是ack

client.ack(headers['ack'], subId);
Run Code Online (Sandbox Code Playgroud)