InvokeHTTP
描述:
该组件通过HTTP客户端配置远程请求URL来访问。 可配置远程URL和HTTP方法。 输入数据流的属性可作为HTTP头,输入数据流的内容作为请求的主体(当HTTP方法是PUT,POST或PATCH时)。
标签:
http, https, rest, client, 客户端
参数:
如下列表中,必填参数则标识为加粗. 其他未加粗参数,则表示为可选参数。表中同时提到参数默认值设置, 参数还支持 表达式语言, 并且 如果将一个参数认定为"敏感", 表示是加密状态. 在输入一个敏感参数时, 确保 orchsym.properties 文件中存在属性设置 orchsym.sensitive.props.key.
名字 | 默认值 | 允许值列表 | 描述 |
---|---|---|---|
HTTP方法 | GET | HTTP请求方法(GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS)。 也支持任意方法。 POST,PUT和PATCH以外的方法可在没有消息体的情况下发送。 支持表达式语言 (支持流属性和变量) | |
远程URL | 将连接的远程URL,包括协议,主机,端口,路径。 支持表达式语言 (支持流属性和变量) | ||
SSL服务 | 控制器服务API: SSLContextService 实现: StandardRestrictedSSLContextService StandardSSLContextService | SSL服务用于为TLS / SSL(https)连接提供客户端证书信息。 它还用于连接到HTTPS代理。 | |
忽略Https证书认证 | false | - true - false | HTTPS请求时,是否忽略证书认证。 |
连接超时 | 5 secs | 连接远程服务的最长等待时间。 | |
读取超时 | 15 secs | 远程服务读取的最长等待时间。 | |
包含日期头 | 包含 | - 包含 - 不包含 | 在请求头中加入RFC-2616标准的日期 |
重定向 | 是 | - 是 - 否 | 遵循远程服务器发出的HTTP重定向。 |
保留会话 | 保留 | - 保留 - 不保留 | 指定在请求完成时是否保持连接活动 |
可发送的属性 | 正则表达式,用于定义在请求中作为HTTP头发送的属性。 如果未定义,则不会将任何属性作为HTTP头发送。 此外,任何自定义属性都可作为HTTP头发送。 自定义属性值也支持表达式语言。 | ||
使用NTLM认证 | false | - true - false | 是否使用NTLM身份验证与网站通信,将使用NTLM域,基本身份验证用户名和基本身份验证密码属性作为身份验证信息。 |
NTLM域 | 客户端用于跟远程URL进行身份验证的NTLM域。 | ||
基本身份验证用户 | 客户端用于对远程URL进行身份验证的用户名。 不能包含控制字符(0-31),'\uff1a'或DEL(127)。 | ||
基本身份验证密码 | 客户端用于对远程URL进行身份验证的密码。 敏感状态 | ||
代理配置 | 控制器服务API: ProxyConfigurationService 实现: StandardProxyConfigurationService | 提供代理配置服务,如果设置,将取代每个组件的代理设置。且支持 SOCKS 和HTTP + AuthN | |
代理主机 | 代理服务器的标准主机名或IP地址 支持表达式语言 (仅支持变量) | ||
代理端口号 | 代理服务器的端口 支持表达式语言 (仅支持变量) | ||
代理类型 | http | 链接的代理类型,必须是http或者https 支持表达式语言 (仅支持变量) | |
代理用户名 | 代理访问的授权用户名 支持表达式语言 (仅支持变量) | ||
代理用户密码 | 代理访问的授权用户的密码 敏感状态 支持表达式语言 (仅支持变量) | ||
响应内容作为属性 | 如果设置,则接收到的响应主体将被放入原始数据流的属性中,而不是单独的数据流。 属性的键是通过匹配此属性的值来确定的。 支持表达式语言 (支持流属性和变量) | ||
响应内容的最大字节数 | 256 | 如果将响应主体路由到原始属性(通过设置“响应内容作为属性”或通过接收错误状态代码),则标志此属性所包含字符数的最大值。 这很重要,因为属性保存在内存中,属性值过大会很快导致内存不足问题。 如果输出超过此值,将被截断。 该值应该尽量小。 | |
摘要认证 | 不认证 | - 认证 - 不认证 | 与网站通信时是否使用摘要式身份验证。 “基本身份验证用户”和“基本身份验证密码”用于身份验证。 |
总是响应输出 | 否 | - 是 - 否 | 将强制生成响应数据流并输出到“Response”连线,而不管收到的服务器状态代码是什么,或者组件是否配置为将服务器响应主体放在请求属性中。 在后面的配置中,具有属性中的响应主体的请求数据流和典型的响应数据流将被发送到它们各自的连线。 |
信任主机 | 绕过普通的信任库主机名验证程序,以允许指定的远程主机名为受信任的。 启用此属性具有MITM安全隐患,明智地使用。 仍将接受基于正常信任库主机名验证程序的其他连接。 仅对SSL(HTTPS)连接有效。 | ||
添加响应头到请求中 | 不添加 | - 添加 - 不添加 | 启用此属性会将所有响应标头保存到原始请求。 这可能是在需要响应头但由于收到状态码而未生成响应时。 |
Content-Type | ${mime.type} | Content-Type指定通过PUT,POST或PATCH传输内容的格式。 在匹配表达式语言后的值为空时,Content-Type默认为application/octet-stream 支持表达式语言 (支持流属性和变量) | |
发送消息内容 | 发送 | - 发送 - 不发送 | 如果为true,则在POST/PUT/PATCH请求上发送HTTP消息正文(默认)。 如果为false,则禁止发送。 |
使用Chunked编码 | 不使用 | - 使用 - 不使用 | 当POST/PUT/PATCH请求发送时,如果为true,则不发送Content-length请求头,使用chunked值的Transfer-Encoding请求头。该属性被用于在传输数据时HTTP 1.1中无法预知发送数据大小时使用。 |
"No Retry"惩罚 | 否 | - 是 - 否 | 启用此属性,将惩罚路由到“No Retry”连线的数据流。 |
使用HTTP ETag | 不使用 | - 使用 - 不使用 | 为HTTP请求启用HTTP实体标记(ETag)支持。 |
ETag缓存大小 | 10MB | ETag缓存的最大值。 默认大小为10MB。 | |
支持Cookie | 不支持 | - 支持 - 不支持 | 指定在发送请求时是否添加cookie以及在收到响应时验证cookie,添加和接收的cookie定义为“Cookies”放置在数据流属性中 |
动态参数:
名字 | 值 | 描述 |
---|---|---|
Header Name | Attribute Expression Language | 发送请求HTTP头的动态参数设置,且该参数支持属性表达式。 支持表达式语言 (支持流属性和变量) |
连线:
名字 | 描述 |
---|---|
Original | 原始数据流将在请求成功后输出到此连线(2xx状态代码)。 |
Failure | 原始数据流将在任何类型的连接失败,超时或一般异常时输出到此连线。 |
Retry | 原始数据流将在接收到重试的状态代码(5xx状态代码)时输出到此连线。 |
No Retry | 原始数据流接收到不应重试的状态代码(1xx,3xx,4xx状态代码)时输出到此连线。 |
Response | 请求成功(2xx状态代码)后,远程响应信息将作为数据流输出到此连线。 如果'总是响应输出'属性为true,则无论收到何种状态码,响应都将发送到此连线。 |
读取属性:
未提供。
写入属性:
名字 | 描述 |
---|---|
invokehttp.status.code | 返回的状态码 |
invokehttp.status.message | 返回的状态信息 |
invokehttp.response.body | 在收到的状态码不成功(2xx)的情况下,响应正文将被置于请求数据流的'invokehttp.response.body'属性中。 |
invokehttp.request.url | 请求的URL |
invokehttp.tx.id | 读取响应后返回的事务ID |
invokehttp.remote.dn | 远程服务器的DN |
invokehttp.java.exception.class | 组件出现故障时引发的Java异常类 |
invokehttp.java.exception.message | 组件出现故障时引发的Java异常消息 |
user-defined | 如果设置了“响应内容作为属性”属性,则设置的任何内容都将成为属性键,值将成为HTTP响应的主体。 |
状态管理:
该组件不保存状态。
限制:
该组件没有限制
输入流要求:
组件允许提供输入流。
系统资源考量:
未提供。