\subsection{消息属性}
AMQP中的消息属性是消息在生产时确认的,不会被消息队列改变。Pika中使用BasicProperties来配置消息的属性,并在channel.basic_publish()
的properties
参数中赋予消息。
pika.spec.BasicProperties
的构造函数可以接受以下参数,这些参数的意义均为AMQP标准定义的。
content_type
,消息的内容类型,参考MIME TYPE,例如纯文本为plain/text
,JSON为application/json
。content_encoding
,消息内容的编码格式,主要用于设置压缩编码格式,如base64
或者gzip
。headers
,消息的头信息,键值结构,健最大为255个字符,值可以是任何有效的AMQP值类型。delivery_mode
,是否持久化,整型,1表示不持久化,2表示持久化。priority
,消息的优先级,取值0到9,一般不建议使用。correlation_id
,指定消息的关联ID,常用于回复消息。reply_to
,用于指定回复的队列名称。expiration
,消息失效时间,255字符内的短字符串,常放置整数时间戳。message_id
,消息ID。timestamp
,消息的时间戳。type
,消息类型。user_id
,用户ID。app_id
,应用程序ID。cluster_id
,集群ID,一般不建议使用。