NestJS:有没有办法从外部调用微服务rabbitmq

Posted

技术标签:

【中文标题】NestJS:有没有办法从外部调用微服务rabbitmq【英文标题】:NestJS: is there way call microservices rabbitmq from outside 【发布时间】:2021-03-26 10:57:41 【问题描述】:

我有一个微服务,它的传输器是rabbitmq,并且有@MessagePattern('sum')。我想知道是否有一种方法可以模拟从外部对我的微服务 messagePattern 侦听器的调用。我想我可以通过查找微服务正在侦听的队列或仅通过从我的 rabbitmq 客户端发布数据来在 rabbitmq 管理 gui 中做到这一点

谁能提供微服务所期望的rabbitmq传输的payload格式?

【问题讨论】:

【参考方案1】:

找到解决方案:

const app = await NestFactory.createMicroservice<MicroserviceOptions>(
            AppModule,
            
                transport: Transport.RMQ,
                options: 
                    urls: ['amqp://localhost:5672'],
                    queue: 'notification',
                    queueOptions: 
                        durable: false,
                    ,
                ,
            ,
        );

因此,每个微服务在使用您传递给选项参数的名称的队列上运行创建后 微服务期望传递带有键“模式”的json和messagePattern的值名称来调用

【讨论】:

以上是关于NestJS:有没有办法从外部调用微服务rabbitmq的主要内容,如果未能解决你的问题,请参考以下文章

通过nats消息运行分子微服务

NestJS 微服务错误,“没有匹配的消息处理程序”

如何使用nestjs redis 微服务?

有没有办法从猫鼬返回数据?打字稿,NestJS

有没有办法从NestJS应用程序中收集所有方法及其路径?

在 NestJS 中,有没有办法将数据从 Guards 传递到控制器?