0

我的测试 rabbitmq 环境中有一个队列 D4。
我想使用主题交换将消息发布到 D4 队列。
在 Web 管理控制台中,我将带有路由键 K 的消息绑定到队列 D4。
但是我的消息没有传递到 D4 队列。
当我将主题更改为直接交流时,一切正常。
我的代码有什么问题?

ExchangeName = <<"custom.topic">>,   
ExchangeType = <<"topic">>,  
Key = <<"K">>,
Msg = <<"123">>,
{ok, Connection} = amqp_connection:start
    (#amqp_params_network{username = <<"guest">>, password = <<"guest">>, host = "192.168.1.1"}),
{ok, Channel} = amqp_connection:open_channel(Connection),
#'exchange.declare_ok'{} = 
    amqp_channel:call(Channel, #'exchange.declare'{exchange=ExchangeName, durable=true, type = ExchangeType}),
amqp_channel:call(Channel, #'basic.publish'{routing_key = Key}, #amqp_msg{props = #'P_basic'{delivery_mode=2}, payload = Msg}),
4

1 回答 1

0

我自己发现了错误。

amqp_channel:call(Channel, #'basic.publish'{ exchange= ExchangeName ,routing_key = Key}, #amqp_msg{props = #'P_basic'{delivery_mode=2}, payload = Msg})

于 2012-08-28T11:54:12.953 回答