我当前正在尝试从azure服务总线获取的消息中确定消息内容。但是,内容是一个我怀疑是用C#编写的对象。你知道吗
<uamqp.c_uamqp.cMessage object at 0x00000000033B3810>
我目前正在使用python,我想访问这个对象并获取它的属性。有什么办法吗?你知道吗
编辑: 这只是一个消息对象中包含的属性
{'auto_renew_error': None,
'_encoding': 'UTF-8',
'_expiry': None,
'received_timestamp': datetime.datetime(2019, 8, 8, 13, 21, 39,
405000),
'_receiver': <azure.servicebus.receive_handler.Receiver object at 0x00000000033A47F0>,
'_annotations': {'x-opt-enqueued-time': 1565284860716L, 'x-opt-enqueue-sequence-number': 0L, 'x-opt-locked-until': 1565284959471L, 'x-opt-sequence-number': 3406L},
'header': <uamqp.message.MessageHeader object at 0x00000000039BE400>,
'_app_properties': None,
'message': <uamqp.message.Message object at 0x00000000039BE320>,
'properties': <uamqp.message.MessageProperties object at 0x00000000039BE2E8>}
def getAttribute(message):
print(message.__dict__['message'].__dict__['_message'])
上面的代码基本上只是获取消息对象,然后读取其属性,并继续查看嵌入到初始消息对象中的对象的属性。我被“\u messages”对象卡住了,因为我无法用dict读取它的属性
即使对象是在C中创建的,它仍然应该被正确地序列化,并且读取时不会出现问题。您需要解码主体并解析JSON消息。你知道吗
你能提供更多的代码来说明你的方法和你从哪里得到的结果吗?你知道吗
相关问题 更多 >
编程相关推荐