python qpid消息编码

时间:2012-02-14 15:16:44

标签: python encoding message amqp qpid

我正在尝试从python中的amqp代理接收消息。这是我的代码:

#!/usr/bin/python

import sys
import os
import getopt
from qpid.messaging import *
from qpid.log import enable, DEBUG

broker_rcv = "admin/admin@hostname:IP"
address_rcv = "broadcast.QUEUE_NAME.QUEUE_NAME"  + "; { node: { type: queue }, assert: never , create: never, mode: " + "browse" + " }"

connection_rcv = Connection(broker_rcv)
connection_rcv.open()
session_rcv = connection_rcv.session()
receiver = session_rcv.receiver(address_rcv)

msg = receiver.fetch(timeout=None)
print msg.content

但是当我尝试打印消息时,我会用奇怪的编码看到它们,并且无法改变消息编码。

我做错了什么?

2 个答案:

答案 0 :(得分:0)

msg.content包含某个生产者发送的原始邮件内容。你无法改变它。 你在上面提到的编码是什么?如果您在打印msg时看到它,请忽略它。

答案 1 :(得分:0)

您所做错的是您无法解码消息。当您收到编码消息时,您必须先解码它。

那些FIX消息?所有技术规格都在http://fixprotocol.org/specifications/

这里有一个Python库http://source.kentyde.com/fixlib