首页 新闻 会员 周边 捐助

rabbitmq直连模式的问题

0
[待解决问题]

生产端
channel.QueueDeclare(queueName, true, false, false, null);
//channel.QueueBind(queueName, exchangeName, routeKey);
string message = JsonConvert.SerializeObject(eventData);
byte[] body = Encoding.UTF8.GetBytes(message);
channel.BasicPublish(exchangeName, routeKey, null, body);

消费端:
channel.ExchangeDeclare(exchangeName, exchangeType, true, false, null);
channel.QueueDeclare(queueName, true, false, false, null);
channel.QueueBind(queueName, exchangeName, "23we");
var consumer = new EventingBasicConsumer(channel);
consumer.Received += async (model, ea) =>
{
string eventName = ea.RoutingKey;
byte[] resp = ea.Body.ToArray();
string body = Encoding.UTF8.GetString(resp);
_log.LogInformation(body);
}

问题是我不管消费端的routekey写什么,都能收到消息,不应该是根据生产端的routeky来确定的吗?

问题补充:

灬丶的主页 灬丶 | 初学一级 | 园豆:9
提问于:2020-09-17 11:50
< >
分享
所有回答(1)
0

完整代码贴一下,这看不出来问题。

不安分的黑娃 | 园豆:169 (初学一级) | 2020-09-20 00:11

这就是全部代码了

支持(0) 反对(0) 灬丶 | 园豆:9 (初学一级) | 2020-09-21 08:43

会不会是之前使用过了这个route-key

支持(0) 反对(0) 灬丶 | 园豆:9 (初学一级) | 2020-09-21 08:46

@灬丶: 建议你登陆RabbitMQ控制台看一下,你的交换机的类型是什么。一般上自己安装的RabbitMQ 通过http://{node-hostname}:15672/就可以访问,默认用户名密码都是guest

支持(0) 反对(0) 不安分的黑娃 | 园豆:169 (初学一级) | 2020-09-22 14:19

@灬丶: 我有点好奇你的交换机类型是啥了。

支持(0) 反对(0) 不安分的黑娃 | 园豆:169 (初学一级) | 2020-09-22 14:20

@不安分的黑娃: direct

支持(0) 反对(0) 灬丶 | 园豆:9 (初学一级) | 2020-09-22 14:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册