首页 > 解决方案 > 在 Go 和 AMQP 1.0 中使用 LinkProperty 的正确方法

问题描述

有一个启用了 AMQP 1.0 插件的 RabbitMQ 服务器。名称为接收者的队列是持久的,并且具有 'x-message-ttl' 参数值为 6000。

我正在使用github.com/Azure/go-amqp库。当我session.NewSender以这种方式创建时:

sender, err := session.NewSender(
            amqp.LinkProperty("x-message-ttl", "6000"),
            amqp.LinkTargetAddress("receiver"),
            amqp.LinkTargetDurability(amqp.DurabilityConfiguration),
        )

服务器返回错误:

创建发件人链接:会话由服务器结束:*错误{条件:amqp:precondition-failed,描述:PRECONDITION_FAILED - vhost '/'中队列'receiver'的不等效参数'x-message-ttl':没有收到,但当前是“long”类型的值“6000”,信息:map[]}

传递“x-message-ttl”参数的正确方法是什么?

标签: gorabbitmqamqp

解决方案


推荐阅读