\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,一般不建议使用。