【发布时间】:2020-05-03 21:36:26
【问题描述】:
我有一个简单的 NestJs 微服务应用程序,它正在侦听来自 Rabbitmq 服务的消息。
async function bootstrap() {
dotenv.config();
// TODO: Check for ENV valid
const rabbitOptions = {
urls: [`amqp://${process.env.MQ_HOSTNAME}:${process.env.MQ_PORT}`],
queue: process.env.TASK_QUEUE_NAME,
queueOptions: { durable: false },
};
const app = await NestFactory.createMicroservice(AppModule, {
transport: Transport.RMQ,
options: rabbitOptions,
});
await app.listen(() => console.log(`listening...`));
}
bootstrap();
...
@MessagePattern()
async respondQueue(@Payload() payload: AppleDto, @Ctx() context: RmqContext): Promise<any> {
console.log('received message', payload);
console.log(context.getArgs()[0].properties);
return { response: 'wow' };
}
当我从 Rabbitmq UI 发布时,它会很好地使用消息。
但是我在另一个队列上回复消息没有成功。
不确定这是不受支持还是我做错了什么。
【问题讨论】: