【问题标题】:How to set priority of IBM MQ message through REST API?如何通过 REST API 设置 IBM MQ 消息的优先级?
【发布时间】:2019-05-04 02:57:40
【问题描述】:

我正在尝试通过 REST API 将消息放入 IBM MQ 队列,但我不知道如何在请求中设置优先级。我尝试简单地使用“优先级”作为查询参数,但收到以下错误:

"error": [
        {
            "action": "Resubmit the request with an appropriate set of parameters.",
            "completionCode": 0,
            "explanation": "The REST API does not support this query parameter for this operation.",
            "message": "MQWB0019E: The query parameter 'priority' is not allowed.",
            "msgId": "MQWB0019E",
            "reasonCode": 0,
            "type": "rest"
        }
    ]

Question 36399382 提到同时使用“priority”和“targetClient”查询参数,但这似乎是 Apache Camel 特有的,即使尝试过,也没有用。

我浏览了所有我能找到的 IBM MQ REST API 文档,但没有找到任何解决方法。我确定某处有一些文档,但我只是没有找到它。这是必须在服务器上配置的特定内容,还是我的语法有问题?

提前致谢!

【问题讨论】:

    标签: rest ibm-mq


    【解决方案1】:

    消息传递 REST API,即对/messaging/qmgr/{qmgrName}/queue/{queueName}/message 的 HTTP POST 目前不包含用于设置消息优先级的标头。

    它包括correlationIdexpirypersistenceReplyTo 的标头。请参阅reference material here

    如果您有需要设置不同优先级的请求,您可以创建不同的别名队列定义,并为 DEFPRTY 属性设置不同的值,所有这些都指向同一个本地队列,并让您​​的 REST API 应用程序使用适当的别名队列名称以便将优先级设置为他们需要的。

    【讨论】:

    • 感谢您确认我没有错过它! :-)
    • @blackpaladin - 很高兴能够提供帮助。如果它解决了您的问题,请记住接受答案
    猜你喜欢
    • 1970-01-01
    • 2012-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-04
    • 2019-02-03
    • 1970-01-01
    • 2019-03-24
    相关资源
    最近更新 更多