首先,确保您的RabbitMQ服务正在运行并已配置正确。如果您使用的是本地安装的RabbitMQ服务器,请确保它正在运行并启用。
其次,确保您的代码正确使用了amqplib模块。以下是发送消息到队列的示例代码:
const amqp = require('amqplib');
async function sendMessage() {
try {
const connection = await amqp.connect('amqp://localhost');
const channel = await connection.createConfirmChannel();
await channel.assertQueue('my-queue', { durable: true });
const message = 'Hello, RabbitMQ!';
channel.sendToQueue('my-queue', Buffer.from(message), { persistent: true });
console.log('Message sent:', message);
await channel.close();
await connection.close();
} catch (e) {
console.error(e);
}
}
sendMessage();
在这个例子中,我们创建了一个AMQP连接并使用它创建了一个Confirm通道。然后,我们声明了一个名为“my-queue”的队列,将一条消息发送到该队列,并将通道和连接关闭。
如果您的代码类似于以上代码,并且仍然无法发送消息,请检查RabbitMQ的日志以查看是否有任何与连接相关的错误。您还可以使用RabbitMQ的管理界面来查看特定队列的消息数量,以确定是否有消息被发送成功。