HTTPRequest 节点

使用 HTTPRequest 节点与 Web Service 进行交互。

用途

HTTPRequest 节点与 Web Service 交互,使用全部或部分输入消息作为发送到该服务的请求。 您也可以配置此节点,以便在将消息传播到消息流中的后续节点之前,根据输入消息的内容创建输出消息,加上 Web Service 响应的内容。

根据配置,此节点通过输入消息的指定内容来构造 HTTP 或基于 SSL 的 HTTP (HTTPS) 请求,并将此请求发送到 Web 服务。 节点从 Web Service 接收响应,并解析此响应以将之包含在输出树中。 如果您的配置要求生成 HTTP 头,那么节点会生成这些头。

可以在包含或不包含 HTTPInputHTTPReply 节点的消息流中使用此节点。

HTTPRequest 节点处理以下消息域中的消息:

  • DFDL
  • XMLNSC
  • JSON
  • BLOB
  • MIME
  • XMLNS
  • MRM

HTTPRequest 节点位于 HTTP 面板的抽屉中, 在 IBM App Connect Enterprise 工具包中用以下图标表示:

HTTPRequest 节点图标

使用 HTTPRequest 节点向 Web Service 发出请求

一个 HTTP 请求有两部分:
  1. 服务 URL。
  2. 远程服务器处理的数据流,发回的响应通常是 SOAP 或 XML 中的其他 Web Service 消息。

URL 格式为 http://<address>[:<port>]/<function>;例如,http://localhost:7080/request。 该 URL 可以在HTTPRequest节点参数中静态指定为消息本身的一个字段,也可以指定为本地环境的一个字段。 要发送到 Web Service 的数据可以是消息树的整体或部分,如 HTTPRequest 节点属性中所指定。

对于大多数请求,数据必须是CCSID 1208 格式。 应答可以替换输入消息,也可以插入到消息树中; 位置在 HTTPRequest 节点参数中指定。 应答域为 XMLNS。 如果请求成功,则 HTTPResponse 插入到消息树的前端,应答位于树的指定位置,并且请求传至输出终端。 如果 HTTPRequest 节点无法发出请求,那么会将 ExceptionList 插入到消息树中,并将树传播到 Failure 终端。

如果请求由 HTTPRequest 节点成功发送,但 Web Service 未成功,那么 HTTPResponse 将插入到消息树中,并传播到 Error 终端。 HTTPRequest 节点上的错误消息位置参数指定在树中放置响应的位置,例如 OutputRoot.XMLNS.error。 您可能必须使用 Compute 节点将此响应强制转换为能够显示数据的相应代码页,例如:
Set OutputRoot.XMLNS.error850 = CAST(InputRoot.XMLNS.error.BLOB as CHAR CCSID 850);
有关 HTTP 的信息,请参阅超文本传输协议 - HTTP/1.1。 如需了解有关 HTTP 返回代码的更多信息,请参阅 HTTP 响应代码

您可以指定超时时间间隔,从而当请求时间超过指定时间时,将请求以正确的消息传至 Failure 终端。 对于 HTTPRequest 节点处理的每个请求,它将打开一个连接,然后在返回响应时将其关闭。 如果指定了超时时间间隔,在时间间隔后会关闭套接字。 这个关闭确保请求仅获得正确响应,并且丢弃任何请求超时的响应数据。

您可以使用 HTTP 代理通过中间站点传送请求。 您可以将工具作为代理运行来查看请求和响应,从而对流进行调试 。 HTTP 目标如代理所示;如果指定了本地主机的 HTTP 目标,并且 HTTP 代理正运行在另一台计算机上,则请求路由到远程代理计算机上,而不是发送请求的源计算机上。

在消息流中使用 HTTPRequest 节点

HTTPRequest节点可用于任何必须发送 HTTP 请求的消息流。 最常用的示例是调用 Web Service 的消息流。

有关 Web Service 的更多信息,请参阅 处理 Web Service 消息

HTTPRequest 节点可以使用需要以下认证机制的服务:

处理错误

节点使用 TCP/IP 直接与外部服务交互;因此会遇到以下几种类型的错误:

  • TCP/IP 生成的错误,例如no route to host或者connection refused.

    如果此节点检测到这些错误,则用收到的错误信息填充异常列表,并将未经更改的输入消息传递到 Failure 终端。

  • Web 服务器返回的错误。 表示这些错误的 HTTP 状态码不在 100 - 299 范围之内。 如果节点检测到这些错误,将会按照错误选项卡上指定的属性将应答路由到 Error 终端。

    应答将作为 BLOB 消息输出,这是因为节点无法确定此应答的格式是什么。 如果您未配置此节点处理重定向,则也会以相同的方法来处理具有重定向状态码(3xx)的消息。

HTTP 响应代码

HTTPRequest 节点将 100 系列状态码视为 "continue" 响应,废弃当前响应,并等待来自 Web 服务器的另一个响应。

200 系列状态码被视为成功,节点的不同选项卡上的设置确定生成的输出消息的格式,并且响应将被路由到节点的 Out 终端。

300 系列状态码用于重定向。 如果选择了遵循 HTTP(s) 重定向属性,那么此节点会将请求重新发送到所接收的响应中指定的新目标。 如果未选择 “跟随 HTTP 重定向” 属性,则代码将被视为错误,如使用HTTPRequest节点向Web服务发出请求中所述。 如需了解有关 HTTP 返回代码的更多信息,请参阅 HTTP 响应代码

400 和 500 系列状态码是错误,将按 使用 HTTPRequest 节点向 Web Service 发出请求中所述进行处理。 如需了解有关 HTTP 返回代码的更多信息,请参阅 HTTP 响应代码

处理头

如果选择 将输入消息替换为 Web Service 响应将输入替换为错误,那么输入消息的头 (当消息到达 HTTPRequest 节点的 In 终端时属于该消息的头) 不会与离开 HTTPRequest 节点的消息一起传播。 然而,如果指定了某个在消息树中指定位置的属性,则传播输入消息的头。

HTTPResponse 头包含由远程 Web Service 返回的头,它是从节点传播的消息(属性后面)中的第一个头。 无论选择哪些选项,都会执行此操作。 因此,要将来自 HTTPRequest 节点的应答放入 IBM MQ 队列,请处理这些头,以便 MQMD 是第一个头 (在 "属性" 之后)。

如果要将输入消息替换为响应,那么可以在 HTTPRequest 节点之前将输入消息 MQMD 复制到环境树中,然后在 HTTPRequest 节点之后将其复制回消息树中。 如果要为响应指定位置以保留现有的输入消息头,则必须移动或移除 HTTP 响应头从而使 MQMD 成为第一个头。

以下示例包含用于移除 HTTPHeader 的 ESQL:
SET OutputRoot = InputRoot;
SET OutputRoot.HTTPResponseHeader = NULL; 
以下示例包含用于移动 HTTPHeader 的 ESQL,因此保留了它提供的信息:
SET OutputRoot = InputRoot;
DECLARE HTTPHeaderRef REFERENCE TO OutputRoot.HTTPResponseHeader;
DETACH HTTPHeaderRef;
ATTACH HTTPHeaderRef TO OutputRoot.MQMD AS NEXTSIBLING;

终端和属性

下表描述了 HTTPRequest 节点终端。

终端 描述
输入 接受节点处理的消息的输入终端。
失败 如果在节点中处理消息期间检测到故障,消息将路由到此输出终端。
输出 如果成功完成 Web Service 请求并且需要在此消息流内进行进一步处理,消息将路由到此输出终端。
Error 如果未设置属性遵循 HTTP(s) 重定向属性,那么会将包含不在范围 200 到 299 之内的 HTTP 状态码的消息路由到此输出终端,包括重定向代码 (3xx)。

下表描述了此节点的属性。 标题为 M 的列指示该属性是否为 必需 (如果未定义缺省值时必须输入值,那么在面板上标有星号); 标题为 C 的列指示该属性是否为 可配置 (您可以在将消息流添加到 BAR 文件以进行部署时更改该值)。

下表描述了 HTTPRequest 节点的 "描述" 属性。

属性 M C 缺省 描述
节点名 节点类型 HTTPRequest 节点的名称。
简短描述   节点的简要描述。
详细描述   描述消息流中节点用途的文本。

下表描述了 HTTPRequest 节点的 "基本" 属性。

属性 M C 缺省 描述 mqsiapplybaroverride 命令属性
Web Service URL   Web Service 的 URL。 必须以 http://hostname[:port]/[path] 的格式提供该 URL,其中
  • http://hostname 必须指定。
  • port 具有缺省值 80。 如果您指定值,那么必须在端口号前包括“:”。
  • path 缺省值为 /。 如果指定了值,那么必须在路径前包括“/”。
URLSpecifier
请求超时(秒) 120 节点等待来自 Web Service 的响应的时间(以秒计)。 有效范围是 1 到 (231)-1。 不能输入表示无限期等待的值。 超时可能要耗用比指定值长一秒的时间。 timeoutForServer

HTTPRequest节点 HTTP 的设置属性如下表所示。

属性 M C 缺省 描述 mqsiapplybaroverride 命令属性
HTTP(S) 代理位置   请求所发送到的代理服务器。 此值的格式必须为 hostname:port

如果配置的代理服务器需要认证,那么必须使用具有凭证类型 httpproxymqsicredentials 命令 (或具有资源名称 httpproxymqsisetdbparms 命令) 设置凭证,或者在消息流中提供凭证。 更多信息,请参阅通过启用身份验证的 HTTP 代理服务器发送请求

httpProxyLocation
遵循 HTTP(S) 重定向 未选中 如果选中此复选框,将遵循重定向。 如果取消选中此复选框,则不遵循重定向。  
HTTP 版本 1.0 用于请求的 HTTP 版本。 有效值为 1.01.1 httpVersion
启用 HTTP/1.1 保持活动 选中(如果 HTTP 版本1.1 使用 HTTP/1.1 保持活动 enableKeepAlive
HTTP 方法 POST HTTP 方法。 有效值为 POSTGETPUTDELETEHEAD。 默认情况下 ,HTTPRequest节点在连接到远程Web服务器时使用 HTTP POST方法。 HEAD 用于确定服务是否可用 - 例如,网络分派器尝试确定哪个服务器可用 - 并发送回正确的头(包括 content-length)而无主体数据。  
使用压缩 此属性控制是否压缩 HTTP 请求内容。 您可以从 nonegzipzlib (deflate)deflate 中选择值。 如果压缩请求,那么 Content-Encoding 头会设置为指示压缩内容。

zlib (deflate) 表示 RFC 1950 + RFC 1951 组合。

deflate 表示仅 RFC 1951。

requestCompressionType
注意 :HTTPRequest HTTPAsyncRequest 节点总是会重写Content-Length标头,即使您已清除了从输入或请求中生成默认 HTTP 标头。 此操作可以确保内容正确。

下表描述了 HTTPRequest 节点 SSL 属性。

属性 M C 缺省 描述 mqsiapplybaroverride 命令属性
协议 TLS 发出 HTTPS 请求时使用的 SSL 协议。 protocol
允许的 SSL 密码   发出 SSL 请求时使用的以逗号分隔的密码列表。 缺省值空字符串表示使用所有可用的密码。 allowedCiphers
启用 SSL 证书主机名检查 此属性指定接收请求的服务器的主机名是否必须与 SSL 证书中的主机名匹配。 hostnameChecking
SSL 客户机认证密钥别名 (空字符串) 此属性指定 HTTP 连接客户机端的 SSL 认证别名。 使用缺省值表示将自动为您选择第一个适当的密钥。 keyAlias
启用证书撤销列表检查 未选择 此属性指定是否应该对 SSL 连接启用 CRL 检查。 enableCRLCheck

下表描述了 HTTPRequest 节点的 "响应消息解析" 属性。

属性 M C 缺省 描述
消息域 BLOB 这是用于解析消息的域。 如果此字段为空,缺省值为 BLOB
消息模型 未选中 这是在其中定义消息的消息模型模式文件的名称或位置。

单击浏览时,将会显示所选消息域的可用消息模型模式文件列表。

消息 未选中 消息模型模式文件中消息根的名称或位置。 此列表将以您选择的消息模型中定义的所有可用消息进行填充。
物理格式 未选中 消息物理格式的名称。 如果您使用的是 MRM 或 IDOC 解析器,请从列表中选择入局消息的物理格式。 此列表包含您已经为选定消息模型定义的所有物理格式。 如果将消息域属性设置为 DataObject,那么可以将此属性设置为 XMLSAP ALE IDoc。 如果必须解析来自外部源的位流并生成消息树,请将此属性设置为 SAP ALE IDoc

下表描述了 HTTPRequest 节点的 "解析器选项" 属性。

属性 M C 缺省 描述
解析计时 按需解析 此属性控制何时解析响应消息。 有效值为按需立即完成

有关此属性的完整描述,请参阅 按需解析

使用 XML 模式数据类型构建树 未选中 此属性控制 XMLNSC 解析器是否使用取自 XML 模式的数据类型在消息树中创建语法元素。 仅当您将验证选项卡上的验证属性设置为内容内容和值时,才能选择此属性。
将 XMLNSC 压缩解析器用于 XMLNS 域 未选中 此属性控制是否将 XMLNSC 压缩解析器用于 XMLNS 域中的消息。 如果设置此属性,当输入 MQRFH2 头或“响应消息解析”属性域是 XMLNS 时,连接到输出终端的节点中的 XMLNSC 下会显示响应消息数据。
保留混合内容 未选中 此属性控制当遇到响应消息中的混合文本时,XMLNSC 解析器是否在消息树中创建元素。 如果选中此复选框,将为混合文本创建元素。 如果取消选中此复选框,将忽略混合文本并且不创建任何元素。
保留注释 未选中 此属性控制当遇到响应消息中的注释时,XMLNSC 解析器是否在消息树中创建元素。 如果选中此复选框,将为注释创建元素。 如果取消选中此复选框,将忽略注释并且不创建任何元素。
保留处理指令 未选中 此属性控制当遇到响应消息中的处理指令时,XMLNSC 解析器是否在消息树中创建元素。 如果选中此复选框,将为处理指令创建元素。 如果取消选中此复选框,将忽略处理指令并且不创建任何元素。
不透明元素 此属性用于在 XMLNSC 解析器要进行不透明解析的响应消息中指定一列元素。 仅当未启用验证(即,如果验证属性设置为)时,才会执行不透明解析;如果启用了验证,那么将忽略不透明元素中指定的条目。

下表描述了 HTTPRequest 节点的 "错误处理" 属性。

属性 M C 缺省 描述
用错误代替输入 选中 如果选中此复选框,将用错误消息内容替换输入消息内容。 如果不选中此复选框,那么必须指定错误消息位置
错误消息位置 OutputRoot 所解析的元素在 Web Service 错误位流中的开始存储位置。 此属性采用 ESQL 字段引用的格式。

下表描述了 HTTPRequest 节点的 "高级" 属性。

属性 M C 缺省 描述 mqsiapplybaroverride 命令属性
将整个输入消息用作请求消息 选中 如果选中此复选框,那么会将完整的输入消息体传递给 Web Service。 如果您取消选中此复选框,那么必须选择树中的请求消息位置  
树中的请求消息位置 InputRoot 要发送给 Web Service 的位流的开始创建位置。 此属性采用 ESQL 字段引用的格式。  
用 Web Service 响应替换输入消息 选中 如果选中此复选框,那么 Web Service 响应消息将替换输入消息副本,以作为所创建的输出消息的内容。 如果您取消选中此复选框,那么必须选择树中的响应消息位置  
树中的响应消息位置 OutputRoot 所解析的元素在 Web Service 响应位流中的开始存储位置。 此属性采用 ESQL 字段引用的格式。  
从输入消息生成缺省 HTTP 头 选中 如果选中此复选框,将生成 HTTPRequestHeader。 如果 不选中此复选框,输入消息中必须存在有效的 HTTPRequestHeader。  
缺省情况下接受压缩响应 未选中 此属性指示缺省情况下请求节点是否处理压缩响应。 如果请求头不包含 Accept-Encoding 头并且选中此选项,那么节点将 Accept-Encoding 头设置为“gzip, deflate”,并且节点解压缩收到的任何压缩响应。

如果传播到请求节点的消息包含 Accept-Encoding 头,那么消息流或客户机应用程序应处理任何压缩响应。 因此,在此情况下选择此选项无任何影响。

acceptCompressedResponses

下表描述了 HTTPRequest 节点的 "验证" 属性。

有关这些属性的完整描述,请参阅 验证属性

属性 M C 缺省 描述 mqsiapplybaroverride 命令属性
验证 此属性控制是否进行验证。 有效值为内容和值内容继承 validateMaster
失败操作 异常 此属性控制验证失败时采取的措施。 只有将验证设置为内容内容和值,才可以设置此属性。 有效值为用户跟踪本地错误日志例外项例外项列表  

下表描述了 HTTPRequest 节点的 "安全性" 属性。

属性 M C 缺省 描述
安全概要文件 此属性指定安全概要文件的名称,此概要文件会定义节点在消息流中完成的安全性操作。

有关更多信息,请参阅 安全概要文件创建安全概要文件

下表描述了节点的“监视”属性。
属性 M C 缺省 描述
事件 为节点定义的事件显示在此选项卡上。 缺省情况下,不会在消息流中的任何节点上定义任何监视事件。 使用 添加编辑删除 来创建,更改或删除节点的监视事件。

通过选中或取消选中启用复选框,可以启用或禁用此处显示的事件。

本地环境覆盖项

可以使用在其他消息元素中设置值的方式动态覆盖局部环境中设置的值。 可以在 LocalEnvironment.Destination.HTTP 下设置以下值。
设置 描述
RequestURL 覆盖节点上的 Web Service URL 属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.RequestURL = 'http://ibm.com/abc/';
RequestURLDoNotPercentEncodeCharacters 指定将 RequestURL 中的字符排除在百分号编码之外。 HTTPRequest 节点的缺省行为是对 RequestURL中的所有非保留字符进行百分比编码。 缺省情况下,保留字符不进行百分号编码。 以下字符是保留字符: : / ? # [ ] @!$ & ' ( ) * + , ; = < > %
Timeout 覆盖节点上的请求超时(秒)属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.Timeout = 42;
TimeoutMillis 覆盖节点上的请求超时(秒)属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.TimeoutMillis = 5000;
此属性以毫秒为单位来定义超时。 如果同时设置了 TimeoutMillis 和 Timeout 的值,那么前者覆盖后者。
ProxyURL 覆盖节点上的 HTTP(S) 代理位置属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.ProxyURL = 'my.proxy';
RequestLine.RequestURI 覆盖 RequestURI,这是 URL 和端口后面的路径。 例如:
SET OutputLocalEnvironment.Destination.HTTP.RequestLine.RequestURI = '/abc/def';
RequestLine.HTTPVersion 覆盖节点上的 HTTP 版本属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.RequestLine.HTTPVersion = 'HTTP/1.1';
KeepAlive 覆盖节点上的启用 HTTP/1.1 keep-alive 属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.KeepAlive = TRUE;
RequestLine.Method 覆盖节点上的 HTTP 方法属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.RequestLine.Method = 'GET';
SSLProtocol 覆盖 SSLProtocol。 例如:
SET OutputLocalEnvironment.Destination.HTTP.SSLProtocol = 'TLS';
有效值是:SSL、SSLv3、TLS、TLSv1、TLSv1.1、TLSv1.2、SSL_TLS 和 SSL_TLSv2
注: 缺省情况下, SSLv3 在 IBM App Connect Enterprise V 11.0中处于禁用状态,因为 SSLv3 不再被视为安全。
SSLCiphers 覆盖节点上的允许 SSL 密码属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.SSLCiphers =
 'SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA';
ProxyConnectHeaders 指定附加的头,如果出站请求是通过代理建立的 SSL 连接,那么将使用这些头。 这些附加的头随初始 CONNECT 请求一起发送到代理。 例如,使用 SSL 时,可以向代理服务器发送代理认证信息。 可以发送多个头,但为了符合 RFC2616 标准,各个头之间必须以一个回车符和一个换行符 (ASCII 0x0D 0x0A) 分隔;例如:
DECLARE CRLF CHAR CAST(X'0D0A' AS CHAR CCSID 1208);
SET OutputLocalEnvironment.Destination.HTTP.ProxyConnectHeaders =
'Proxy-Authorization: Basic Zm5lcmJsZTpwYXNzd29yZA==' || CRLF || 
'Proxy-Connection: Keep-Alive' || CRLF;
仅当请求是通过代理服务器执行的 SSL 请求时,才使用此设置。 要针对非 SSL 请求发送代理认证信息,请在 HTTPRequestHeader 文件夹中指定各个头,如以下示例中所示:
SET OutputRoot.HTTPRequestHeader."Proxy-Authorization" =
 'Basic Zm5lcmJsZTpwYXNzd29yZA==';
SET OutputRoot.HTTPRequestHeader."Proxy-Connection" = 'Keep-Alive';
UseFolderMode 设置 UseFolderMode。 用于位流生成;对于某些解析器,这将更改输出位流。 例如:
SET OutputLocalEnvironment.Destination.HTTP.UseFolderMode = TRUE;
QueryString 允许出站查询字符串参数的设置。 必须逐个设置每个参数。 例如:
SET OutputLocalEnvironment.Destination.HTTP.QueryString.param1 = 'my"Value"1';
SET OutputLocalEnvironment.Destination.HTTP.QueryString.param2 = 'my"Value"2';
上述 ESQL 将导致编码以下查询字符串(根据 http://tools.ietf.org/html/rfc3986)并随出站请求一起发送:
?param1=my%22Value%221&param2= my%22Value%222
如果目标 URL 已有一个或多个查询参数,那么此处指定的其他参数将附加到现有列表。
QueryStringCCSID 指定在编码之前,必须将查询字符串参数转换为非缺省的字符集(缺省字符集为 UTF-8)。 根据 RFC3986,首先将任何查询字符串参数转换为指定的 CCSID ,然后再对生成的字符串进行编码。 例如:
SET OutputLocalEnvironment.Destination.HTTP.QueryStringCCSID = 943;
上述 ESQL 导致在进行编码前将任何 QueryString 参数转换为 943 代码页。 注:任何查询字符串参数都必须包含 Unicode 的数据。
QueryStringPercentEncodeSpace 指定 QueryString 中的任何空格字符以百分比编码,然后随出站请求一起发送。 缺省情况下,QueryString 中的任何空格字符将转换为“+”字符。 例如:
SET OutputLocalEnvironment.Destination.HTTP.QueryStringPercentEncodeSpace = TRUE;
QueryStringSendWithRedirect 指定 QueryString 随 HTTP(S) 重定向一起发送。 例如:
SET OutputLocalEnvironment.Destination.HTTP.QueryStringSendWithRedirect = TRUE;
QueryStringDoNotPercentEncodeCharacters 在 QueryString 中指定在构建 URI 时不对其进行百分比编码的任何字符。 例如:
SET OutputLocalEnvironment.Destination.HTTP.QueryStringDoNotPercentEncodeCharacters = 'ch"ar';
QueryStringSemicolonSeparator 指定在查询字符串之间使用分号作为分隔符,而不是使用“&”。 例如:
SET OutputLocalEnvironment.Destination.HTTP.QueryStringSemicolonSeparator = TRUE;
Compression 覆盖节点的使用压缩属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.Compression =
 'gzip';
要设置进行压缩前必须达到的最小大小(以字节计),请使用以下覆盖值:

SET OutputLocalEnvironment.Destination.HTTP.MinimumCompressionSize = 1048576;
SSL 认证别名 覆盖节点上 HTTP 连接客户机端的 SSL 认证别名属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.KeyAlias = 'Key1Alias';
EnableCRLCheck 覆盖节点上的启用证书撤销列表检查属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.EnableCRLCheck = 'true';
ServicePrincipalName 指定集成节点协商 Kerberos 安全协议时使用的服务主体名称 (SPN)。 例如:
SET OutputLocalEnvironment.Destination.HTTP.ServicePrincipalName = 
'HTTP/iib.iibservice2.com:7800';
FollowRedirection 覆盖节点上的遵循 HTTP(S) 重定向属性。 例如:
SET OutputLocalEnvironment.Destination.HTTP.FollowRedirection = TRUE;

使用 WrittenDestination 数据

在生成请求后,将使用要将请求发送到的 URI 和压缩详细信息(如果使用)更新本地环境中的 WrittenDestination 文件夹。 HTTPRequest 节点的 WrittenDestination 具有以下格式,仅当使用压缩时才存在此格式:
WrittenDestination = (
   HTTP  = (
      RequestURL = 'http://127.0.0.1:7800/HTTPFLOW' (CHARACTER)
      Compression = (
        OriginalSize = 53 (INTEGER)
        CompressedSize = 71 (INTEGER)
      )
   )
)