使用“Web Service 提供服务”活动进行解压
Web Service 提供服务活动仅支持 gzip 格式的解压。
注: 提供服务活动不支持 deflate 格式或称为 compress 的通用 UNIX 文件压缩格式。
提供服务活动仅支持使用 HTTP/HTTPS 1.0 协议来接收 HTTP 请求。
接收 HTTP 请求时的“提供服务”活动解压运行时行为取决于下列条件:
- 消息级别的 Content-Encoding 值。
- 活动级别的使用压缩/解压复选框设置。
这些条件影响提供服务活动的解压运行时行为,下面部分及运行时解压行为部分中提供的表内描述了这些条件。
消息级别的内容编码值
HTTP 请求的内容编码头值可确定 Integration Appliance 是否解压从客户机所接收的 HTTP 请求主体,如图 1 所示。
图 1. HTTP 请求

内容编码头值将由运行时解压行为部分所提供表中标为“内容编码值”的第三列来表示。
在活动级别设置解压
缺省情况下,会在活动级别为提供服务活动打开解压。您可以清除使用压缩/解压复选框以在活动级别关闭解压。使用压缩/解压复选框在活动的配置任务中可用。运行时解压行为部分所提供表中标为使用压缩/解压复选框的第二列表示使用压缩/解压复选框的设置。
运行时解压行为
下表描述了 Integration Appliance 从 HTTP 客户机接收 HTTP 请求时的解压运行时行为:
“使用压缩/解压”复选框(活动级别) | 内容编码值(消息级别) | Integration Appliance 解压运行时行为 |
---|---|---|
已选中 | gzip | Integration Appliance 将使用 gzip 格式解压请求主体。活动所返回的 headers 输出参数会将内容编码值设置为 gzip。 |
已选中 | 未设置 | Integration Appliance 将按原样(不作任何更改)发送请求主体。活动所返回的 headers 输出参数不会对内容编码值进行设置。 |
已选中 | 识别 | Integration Appliance 将按原样(不作任何更改)发送请求主体。活动所返回的 headers 输出参数不会对内容编码值进行设置。 |
已选中 | 除 gzip 或 identity 之外的任何其他字符串 | Integration Appliance 将发送响应代码 415(媒体类型不受支持)。 |
已清除 | 值无关紧要 | Integration Appliance 不会解压请求主体,而且请求中的当前内容编码值将按原样传递到活动的 headers 输出参数。例如,如果内容编码值被设置为 gzip,但使用压缩/解压复选框却已清除,那么 Integration Appliance 不会解压请求主体,但是活动的 headers 输出参数会将内容编码设置为 gzip。 |
发送请求时的压缩行为
下表描述了 Integration Appliance 向 Web Service 发送 HTTP 请求时的压缩运行时行为。
传递到请求的接受编码头值
下表描述了通过 HTTP 请求传递的接受编码头值。
“使用压缩/解压”复选框(活动级别) | 初始接受编码值 | 端点支持压缩? | 通过 HTTP 请求传递到 Web Service 的接受编码值 |
---|---|---|---|
已选中 | gzip,deflate | 是 | 在请求中,接受编码头将被设置为 gzip,deflate。 |
值无关紧要 | 值无关紧要 | 否 | 在请求中,接受编码头的当前值将按原样传递。 |
已清除 | 值无关紧要 | 值无关紧要 | 在请求中,接受编码头的当前值将按原样传递。 |
接收响应时的解压行为
下表描述了 Integration Appliance 从 Web Service 接收 HTTP 响应时的解压运行时行为。
“使用压缩/解压”复选框(活动级别) | HTTP 响应中的内容编码值(消息级别) | 端点支持压缩? | 接收响应时的 Integration Appliance 解压运行时行为 |
---|---|---|---|
已选中 | gzip | 是 | Integration Appliance 将使用 gzip 格式解压响应主体。 |
已选中 | deflate | 是 | Integration Appliance 将使用 deflate 格式解压响应主体。 |
已选中 | identity | 是 | Integration Appliance 不会解压响应主体。 |
已选中 | 值不列在接受编码头中 | 是 | Integration Appliance 将记录与收到非请求内容编码类型的响应数据有关的错误。 |
已选中 | 值无关紧要 | 否 | Integration Appliance 不会解压响应主体。在响应中,内容编码头的当前值将按原样传递。 |
已清除 | 值无关紧要 | 值无关紧要 | Integration Appliance 不会解压响应主体。在响应中,内容编码头的当前值将按原样传递。 |