HTTP 头
IBM® MQ bridge for HTTP 支持自定义请求 HTTP 头、自定义实体 HTTP 头和标准 HTTP 头的子集。
HTTP 惯例是在所有自定义报头前添加 ,因此 Bridge for 报头前添加 。 x- IBM MQ HTTP x-msg- 例如,要设置优先级头,请使用 x-msg-priority。
- 大多数头值区分大小写。 例如,使用 msgId 头时,
NONE是关键字,而none是 msgID。 - 将忽略拼写错误的头。
自定义实体 HTTP 标题
自定义实体 HTTP 报头包含有关 IBM MQ 邮件的信息。 通过使用实体头,可以在消息描述符 ( MQMD) 中设置值,或在 MQMD中设置查询值。 其他实体头 x-msg-usr设置并返回要与请求关联的任何用户属性信息。
实体标题可用于不同的 HTTP 请求上下文:
- DELETE
- 您只能使用
x-msg-correlId、x-msg-msgId或两者,实体标题与 DELETE HTTP 请求。 标题的作用是通过 MsgId ,并从队列中删除该邮件。 CorrelIdMQGET ,并从队列中删除该邮件。 - GET
- 您只能使用
x-msg-correlId、x-msg-msgId或两者,实体标题与 GET HTTP 请求。 标题的作用是通过 MsgId 在xml-ph-0000@deepl.internal中浏览。 CorrelId 在 MQGET 中浏览特定邮件。 - POST
- 除了
x-msg-timestamp,您可以在 POST HTTP 请求中使用任何实体标题。 - x-msg-require-headers
- 对于任何 GET 、 POST 或 DELETE HTTP 请求,您可以在x-msg-require-headers请求标头中添加多个实体标头,以逗号分隔。 其效果是在 HTTP 响应消息中返回指定的实体头,其中包含关联消息属性的值。
IBM MQ bridge for HTTP在其中处理头的上下文的每个头列表的描述。 例如,在标头 POST、x-msg-require-headers 中 ,该标头由 IBM MQ bridge for HTTP 在 HTTP POST 请求中处理,或在 x-msg-require-headers 请求标头中由 HTTP POST 、 GET 或 DELETE 请求处理。 如果头包含在不允许该头的上下文中,那么将忽略该头。 未报告任何错误。
您可以在请求中添加任何标准的 HTTP 标头,以便由Web服务器或其他请求处理程序进行处理。 同样,响应可能包含由Web服务器或其他响应处理程序插入的其他标准 HTTP 标头。
自定义请求 HTTP 标题
三个自定义请求 HTTP 标头 (x-msg-range 、x-msg-require-headers 和 x-msg-wait )将 HTTP 请求的附加信息传递给服务器。 它们充当请求修饰符。 通过 x-msg-range,您可以限制在响应中返回的消息数据量。 通过 x-msg-require-headers,您可以请求响应以包含有关请求结果的信息。 使用 x-msg-wait ,您可以修改客户端等待 HTTP 响应的时间。
标准 HTTP 报头
必须在 HTTP/1.1 请求中指定主机标准 HTTP 请求头。
可以在请求中指定 “内容长度” 和 “内容类型” 标准 HTTP 实体头。
响应请求时,可以返回内容长度 、内容位置 、内容范围 、内容类型和服务器标准 HTTP 实体标头。 在请求消息的x-msg-request-header标头中指定一个或多个标准 HTTP 标头。