成功启动请求后无法获得MassTransit响应



我正在使用MassTransit和Amazon MQ实现请求/响应。(.NET 6 WebApi(主机的配置如下:

services
.AddMassTransit(x =>
{
x.AddConsumer<ConfigurationConsumer>();
x.UsingRabbitMq((context, cfg) =>
{
cfg.Host(new Uri($"amqps://{rabbitMqSettings.Host}:{rabbitMqSettings.Port}/{Uri.EscapeDataString("/vhostname")}"), h =>
{
h.Username(rabbitMqSettings.Username);
h.Password(rabbitMqSettings.Password);
});
cfg.ConfigureEndpoints(context);
});
x.AddRequestClient<IConfigurationCommand>();
})
.AddMassTransitHostedService();

客户端在没有x.AddConsumer((和cfg的情况下使用相同的配置。配置端点(上下文(。

问题是:在客户端上调用GetResponse将成功地在主机上执行使用者,该使用者似乎按预期响应,但客户端从未得到结果并超时。

另一方面,当我在同一台主机上使用一个webapi控制器来启动GetResponse时,一切都如预期的那样工作。

确保主机和客户端应用程序之间的消息类型相同。

此外,请确保总线是使用托管服务或其他方式在客户端上启动的。

最新更新