У меня есть простое приложение Nest Js Microservice, которое прослушивает сообщения от службы 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' };
}
Оно прекрасно принимает сообщение, когда я публикую sh из интерфейса Rabbitmq.
Но мне не удалось ответить на сообщение в другой очереди.
Не уверен, что это не поддерживается, или я я делаю что-то не так.