2012-02-14 108 views
0

我試圖從python的amqp代理接收消息。這裏是我的代碼:python qpid消息編碼

#!/usr/bin/python 

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

broker_rcv = "admin/[email protected]: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 

但是當我嘗試打印消息時,我看到他們在奇怪的編碼,並且沒有辦法如何更改消息編碼。

我在做什麼錯了?

+0

後一些奇怪的編碼字符串。 – Blender 2012-02-14 15:19:24

+0

AEDEXCHAED 「AEDN0:UAE迪拉姆@HR EURAED XLAħ ANGEXCHANG」 ANGN0:荷蘭@HR EURANG XLAħ AUDEXCHAUD 「AUDN0:AUSTRAL DOLLAR @ HR EURAUD XLAħ AZNEXCHAZN」 AZNN0:阿塞拜疆@HR – user1209304 2012-02-14 15:25:16

+0

如果我刪除了打印並留下了msg.content,我收到如下消息:\ n2 \ xa2 \ x06/\ n \ x0520001 \ x12 \ nEUREX 14.0 \ x1a \ x05EUREX \ x01 * \ x07 \ x08 \ xcd \ x0f \ x10 \ x0b \ x18 \ x0c0 \ x00:\ x06 \ x08 \ x0e \ x10 \ x13 \ x18 \ x0e \ x12L \ x8a \ xe2 \ tH \ n \ x03AED \ x12 \ x04EXCH \ x1a \ x03AED「\ – user1209304 2012-02-14 15:28:11

回答

0

msg.content包含某個製作人發送的原始郵件內容。你不能改變它。 你上面提到的編碼是什麼?如果您在打印消息時看到該消息,請忽略它。