2016-08-02 63 views
0

Channel类(Java Client)提供了三种发布消息的方法,所有消息都使用routingkey参数。标题交换不需要路由键。RabbitMQ中头部交换的适当路由密钥值是什么?

如果我为路由密钥传递一个空值,则返回以下异常:“java.lang.IllegalStateException:无效的配置:'routingKey'必须为非空值。

但是,如果我传递一个空字符串它的作品。所以问题是:使用空字符串是否正确?

回答

0

是的,使用空字符串是正确的。 AMQP协议规范中定义的标题交换不使用路由密钥。

由于驱动程序不知道关于安装程序的任何信息,因此最有可能引发异常,因此在客户端处理所有错误(包括潜在错误)会更安全。