PYMQI返回数据类型问题

时间:2018-08-23 09:45:16

标签: django python-3.x ibm-mq

我正在尝试通过读取队列“ SYSTEM.ADMIN.COMMAND.EVENT”来从队列管理器中获取IBM MQ消息。

打印消息时,我收到以下响应。

阅读队列后,如何将以下消息转换为用户友好格式:

  

b'\ x00 \ x00 \ x00 \ x07 \ x00 \ x00 \ x00 $ \ x00 \ x00 \ x00 \ x03 \ x00 \ x00 \ x00c \ x00 \ x00 \ x00 \ x01 \ x01 \ x00 \ x00 \ x00 \ x01 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ tm \ x00 \ x00 \ x00 \ x02 \ x00 \ x00 \ x00 \ x14 \ x00 \ x00 \ x00 \ x10 \ x10 \ x00 \ x00 \ x1fA \ x00 \ x00 \ x00 \ t \ x00 \ x00 \ x00 \ x04 \ x00 \ x00 \ x00   \ x00 \ x00 \ x0b \ xe5 \ x00 \ x00 \ x033 \ x00 \ x00 \ x00 \ x0cnb153796
  \ x00 \ x00 \ x00 \ x03 \ x00 \ x00 \ x00 \ x10 \ x00 \ x00 \ x03 \ xf3 \ x00 \ x00 \ x00 \ x03 \ x00 \ x00 \ x00 \ x00 \ x04 \ x00 \ x00 \ x00D \ x00 \ x00 \ x0b \ xe7 \ x00 \ x00 \ x033 \ x00 \ x00 \ x000ZANC000.YODA   \ x00 \ x00 \ x00 \ t \ x00 \ x00 \ x000 \ x00 \ x00 \ x1bY \ x00 \ x00 \ x00   \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x04 \ x00 \ x00 \ x004 \ x00 \ x00 \ x0b \ xe9 \ x00 \ x00 \ x033 \ x00 \ x00 \ x00   \ x00 \ x00 \ x00 \ x03 \ x00 \ x00 \ x00 \ x10 \ x00 \ x00 \ x03 \ xf2 \ x00 \ x00 \ x00 \ x1c \ x00 \ x00 \ x00 \ x00 \ x04 \ x00 \ x00 \ x000 \ x00 \ x00 \ x00 \ x0b \ xea \ x00 \ x00 \ x033 \ x00 \ x00 \ x00 \ x1cMQ   资源管理器9.0.0
  \ x00 \ x00 \ x00 \ x04 \ x00 \ x00 \ x00 \ x18 \ x00 \ x00 \ x0b \ xeb \ x00 \ x00 \ x033 \ x00 \ x00 \ x00 \ x04   \ x00 \ x00 \ x00 \ x03 \ x00 \ x00 \ x00 \ x10 \ x00 \ x00 \ x03 \ xfd \ x00 \ x00 \ x00 \ xa1 \ x00 \ x00 \ x00 \ x00 \ x14 \ x00 \ x00 \ x00 \ x10 \ x10 \ x00 \ x00 \ x1fB \ x00 \ x00 \ x00 \ x01 \ x00 \ x00 \ x00 \ x05 \ x00 \ x00 \ x00 \ x14 \ x00 \ x00 \ x04 \ xcd \ x00 \ x00 \ x00 \ x01 \ x00 \ x00 \ x03 \ xf1'

我的代码如下,我使用的是Python 3.6和Django 2.1,除了格式或返回的消息外,其他所有东西都工作正常:

请协助弄清楚如何将PYMQI Queue Get中返回的消息转换为用户可读的格式:

    #
from django.shortcuts import render
from django.http import HttpResponse
import pymqi

#
queue_manager = "QueueManager"
channel = "Channel"
host = "hostname"
port = "port"
queue_name = "SYSTEM.ADMIN.COMMAND.EVENT"
user = "username"
password = "password"
connection_info = "%s(%s)" % (host, port)

#
#(option, args) = OptionParser



# Create your views here.
def index(request):
  #
  qmgr = pymqi.connect(queue_manager, channel, connection_info, user, password)

  #
  queue = pymqi.Queue(qmgr, queue_name)
  print(queue.get())
  messages = queue.get()
  #for message in messages:
  #  print(type(message))
  queue.close()

  qmgr.disconnect()

  return HttpResponse("MQ Hello Tests %s" % messages.hex())

0 个答案:

没有答案