InvokeHTTP 2025.5.31.15¶
捆绑包¶
org.apache.nifi | nifi-standard-nar
描述¶
可以与可配置的 HTTP 端点交互的 HTTP 客户端处理器。目标 URL 和“HTTP 方法”是可配置的。当“HTTP 方法”为 PUT、POST 或 PATCH 时,FlowFile 内容将包括为请求正文,并且可以根据配置属性将 FlowFile 属性转换为 HTTP 标头。
输入要求¶
ALLOWED
支持敏感的动态属性¶
true
属性¶
属性 |
描述 |
---|---|
连接超时 |
等待与 HTTP URL 建立初始套接字连接的最长时间。 |
HTTP 方法 |
HTTP 请求方法(GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONS)。还支持任意方法。POST、PUT 和 PATCH 以外的方法将不带消息正文发送。 |
HTTP URL |
HTTP 远程 URL,包含 http 或 https 架构、主机名或 IP 地址,以及可选的端口和路径元素。URL 的任何编码都必须由用户完成。 |
HTTP/2 已禁用 |
禁用 HTTP/2 协议的协商。HTTP/2 需要 TLS。禁用 HTTP/1.1 时需要支持 HTTP/2 协议。 |
OAuth2 访问令牌刷新策略 |
指定应使用哪种策略来刷新 OAuth2 访问令牌。 |
请求正文已启用 |
启用发送 PATCH、POST 或 PUT 方法的 HTTP 请求正文。 |
请求的 Chunked Transfer-Encoding 已启用 |
允许发送 Transfer-Encoding 标头设置为 Chunked 的 HTTP 请求,并禁用发送 Content-Length 标头。按照 RFC 7230 第 3.3.1 节所述,Transfer-Encoding 适用于 HTTP/1.1 请求中的正文 |
请求 Content-Encoding |
HTTP Content-Encoding 在传输期间应用于请求正文。接收服务器必须支持所选编码,以避免请求失败。 |
请求 Content-Type |
HTTP Content-Type 标头适用于发送 PATCH、POST 或 PUT 方法的 HTTP 请求正文时。未配置时,Content-Type 默认为 application/octet-stream。 |
请求 Date 标头已启用 |
按照 RFC 7231 第 7.1.1.2 节中所述,启用在 HTTP 请求上发送 HTTP Date 标头。 |
请求摘要身份验证已启用 |
按照 RFC 7616 中所述,对 HTTP 请求启用使用用户名和密码凭据的摘要身份验证。 |
请求失败惩罚已启用 |
在收到状态代码在 400 到 499 之间的 HTTP 响应时,启用对请求 FlowFiles 的惩罚。 |
请求标头属性模式 |
定义将哪些 FlowFile 属性作为 HTTP 标头在请求中发送的正则表达式。如果未定义,则不会将任何属性作为标头发送。动态属性将始终作为标头发送。动态属性名称将是标头键,动态属性值(解释为表达式语言)将是标头值。由于 HTTP 协议的要求,属性及其值仅限于 ASCII 字符。 |
请求 Multipart Form-Data Filename 已启用 |
启用将 FlowFile 文件名属性作为 multipart/form-data HTTP 请求的 Content-Disposition 标头中的文件名参数发送。 |
请求 multipart/form-data 名称 |
启用发送使用 multipart/form-data 和配置的表单名称进行格式设置的 HTTP 请求正文。 |
请求 OAuth2 访问令牌提供程序 |
启用对 OAuth2 持有者令牌(应用于使用 Authorization 标头的 HTTP 请求)的托管检索。 |
请求密码 |
为对 HTTP 请求进行身份验证而提供的密码。按照 RFC 7617 通过 Base64 编码,用于 HTTP 基本身份验证。 |
请求 User-Agent |
应用于请求的 HTTP User-Agent 标头。RFC 7231 第 5.5.3 节描述了推荐的格式处理。 |
请求用户名 |
为对 HTTP 请求进行身份验证而提供的用户名。按照 RFC 7617 通过 Base64 编码,用于 HTTP 基本身份验证。 |
响应正文属性名称 |
用于写入传输至 Original 关系的 FlowFiles 的 HTTP 响应正文的 FlowFile 属性名称。 |
响应正文属性大小 |
向 FlowFile 属性写入 HTTP 响应正文时应用的最大大小(以字节为单位)。超过最大值的属性将被截断。 |
响应正文已被忽略 |
禁用向 Response 关系写入 HTTP 响应 FlowFiles |
响应缓存已启用 |
按照 RFC 7234 中所述,启用 HTTP 响应缓存。缓存响应会考虑 ETag 和其他标头。 |
响应缓存大小 |
HTTP 响应缓存的最大大小(以字节为单位)。缓存响应会考虑 ETag 和其他标头。 |
响应 Cookie 政策 |
接受和保存 HTTP Cookie 的策略。接受 Cookie 可以使多个请求保持不变。 |
响应 FlowFile 命名策略 |
确定用于设置 FlowFiles 传输到 Response 关系的文件名属性的策略。 |
需要生成响应 |
启用生成 FlowFile 并传输到 Response 关系,无论接收到的 HTTP 响应是什么。 |
响应标头请求属性已启用 |
允许将 HTTP 响应标头作为属性添加到传输到 Original、Retry 或 No Retry 关系的 FlowFiles。 |
响应标头请求属性前缀 |
当 HTTP 响应标头作为属性添加到传输至 Original、Retry 或 No Retry 关系的 FlowFiles 时,需为标头添加的前缀。 建议以分隔符结尾,如“.”或“-”。 |
响应重定向已启用 |
按照 RFC 7231 第 6.4 节中所述,启用以下与 HTTP 300 系列响应一起发送的 HTTP 重定向。 |
SSL Context Service |
SSL Context Service 为 TLS 通信提供可信证书和客户端证书。 |
套接字空闲连接 |
HTTP URL 的最大空闲连接数。 |
套接字空闲超时 |
关闭 HTTP URL 空闲连接之前的最长等待时间。 |
套接字读取超时 |
等待接收来自与 HTTP URL 的套接字连接的响应的最长时间。 |
套接字写入超时 |
从套接字连接向 HTTP URL 发送请求时等待写入操作的最长时间。 |
proxy-configuration-service |
指定代理配置控制器服务来代理网络请求。在 SOCKS 的情况下,无法保证处理器会使用所选 SOCKS 版本。 |
关系¶
名称 |
描述 |
---|---|
Failure |
当接收到套接字通信错误时,传输请求的 FlowFiles。 |
No Retry |
当接收到 HTTP 状态代码在 400 到 499 之间的响应时,传输请求的 FlowFiles。 |
原创 |
当接收到 HTTP 状态代码在 200 到 299 之间的响应时,传输请求的 FlowFiles。 |
响应 |
当接收到 HTTP 状态代码在 200 到 299 之间的响应时,传输响应的 FlowFiles。 |
Retry |
当接收到 HTTP 状态代码在 500 到 599 之间的响应时,传输请求的 FlowFiles。 |
写入属性¶
名称 |
描述 |
---|---|
invokehttp.status.code |
返回的状态码 |
invokehttp.status.message |
返回的状态消息 |
invokehttp.response.body |
如果收到的状态代码是不成功 (2xx),则会将响应正文置于请求 FlowFile 的 “invokehttp.response.body”属性中。 |
invokehttp.request.url |
原始请求 URL |
invokehttp.request.duration |
对外部端点的 HTTP 调用的持续时间(以毫秒为单位) |
invokehttp.response.url |
在遵循任何重定向后最终请求的 URL |
invokehttp.tx.id |
读取响应后返回的事务 ID |
invokehttp.remote.dn |
远程服务器的 DN |
invokehttp.java.exception.class |
处理器失败时引发的 Java 异常类 |
invokehttp.java.exception.message |
处理器出现故障时引发的 Java 异常消息 |
user-defined |
如果设置了“Put Response Body In Attribute”属性,那么无论设置了什么,都将成为属性键,该值将是 HTTP 响应的正文。 |