Apache NiFi 2.x处理器:ListenHTTP 2.2.0
包
org.apache.nifi | nifi-standard-nar
描述
启动一个HTTP服务器,监听给定的基础路径,将传入的请求转换为流文件(FlowFiles)。该服务的默认URI为http://{主机名}:{端口}/contentListener。仅支持HEAD和POST请求,GET、PUT、DELETE、OPTIONS和TRACE请求将导致错误,并返回HTTP响应状态码405;CONNECT请求也会导致错误,并返回HTTP响应状态码400。在/healthcheck上支持GET请求,如果服务可用,它将返回“200 OK”,内容为“OK”。健康检查功能可以配置为通过不同的端口访问,详细信息请参阅“健康检查请求的监听端口”属性的文档。可以在处理器上启用记录读取器(Record Reader)和记录写入器(Record Writer)属性,以便将传入的请求作为记录进行处理。但不支持对多部分请求和FlowFileV3格式(minifi)的请求进行记录处理。
标签
http、https、摄取、监听、rest
输入要求
禁止
支持敏感的动态属性
否
属性
- 授权主体DN模式:应用于传入连接的主体的可分辨名称(Distinguished Name)的正则表达式。如果该模式与主体DN不匹配,处理器将返回HTTP 403 Forbidden状态。
- 显示名称:授权主体DN模式
- 描述:应用于传入连接的主体的可分辨名称(Distinguished Name)的正则表达式。如果该模式与主体DN不匹配,处理器将返回HTTP 403 Forbidden状态。
- API名称:授权DN模式
- 默认值:.*
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 授权颁发者DN模式:应用于传入连接的颁发者的可分辨名称的正则表达式。如果该模式与颁发者DN不匹配,处理器将返回HTTP 403 Forbidden状态。
- 显示名称:授权颁发者DN模式
- 描述:应用于传入连接的颁发者的可分辨名称的正则表达式。如果该模式与颁发者DN不匹配,处理器将返回HTTP 403 Forbidden状态。
- API名称:authorized-issuer-dn-pattern
- 默认值:.*
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:否
- 基础路径:传入连接的基础路径。
- 显示名称:基础路径
- 描述:传入连接的基础路径
- API名称:基础路径
- 默认值:contentListener
- 表达式语言作用域:JVM级别定义的环境变量和系统属性
- 敏感:否
- 是否必需:是
- 客户端认证:TLS连接的客户端认证策略。在配置了SSL上下文服务时是必需的。
- 显示名称:客户端认证
- 描述:TLS连接的客户端认证策略。在配置了SSL上下文服务时是必需的。
- API名称:client-authentication
- 默认值:AUTO
- 允许值:AUTO、WANT、REQUIRED、NONE
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:否
- 依赖项:SSL上下文服务设置为任何指定的值
- 健康检查请求的监听端口:监听传入健康检查请求的端口。如果设置了该端口,它必须与监听端口不同。如果处理器设置为使用双向SSL,并且使用的负载均衡器不支持对健康检查请求进行客户端认证,则需要配置此端口。通过此端口仅可访问//healthcheck服务,并且仅支持GET和HEAD请求。如果处理器设置为不使用SSL,此端口也不会使用SSL。如果处理器设置为使用单向SSL,此端口将使用单向SSL。如果处理器设置为使用双向SSL,此端口将使用单向SSL(不需要客户端认证)。
- 显示名称:健康检查请求的监听端口
- 描述:监听传入健康检查请求的端口。如果设置了该端口,它必须与监听端口不同。如果处理器设置为使用双向SSL,并且使用的负载均衡器不支持对健康检查请求进行客户端认证,则需要配置此端口。通过此端口仅可访问//healthcheck服务,并且仅支持GET和HEAD请求。如果处理器设置为不使用SSL,此端口也不会使用SSL。如果处理器设置为使用单向SSL,此端口将使用单向SSL。如果处理器设置为使用双向SSL,此端口将使用单向SSL(不需要客户端认证)。
- API名称:health-check-port
- 表达式语言作用域:JVM级别定义的环境变量和系统属性
- 敏感:否
- 是否必需:否
- 作为属性接收的HTTP标头(正则表达式):指定用于确定应作为流文件属性传递的HTTP标头名称的正则表达式。
- 显示名称:作为属性接收的HTTP标头(正则表达式)
- 描述:指定用于确定应作为流文件属性传递的HTTP标头名称的正则表达式。
- API名称:作为属性接收的HTTP标头(正则表达式)
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:否
- HTTP协议:支持与TLS进行应用层协议协商的HTTP协议。
- 显示名称:HTTP协议
- 描述:支持与TLS进行应用层协议协商的HTTP协议。
- API名称:HTTP协议
- 默认值:HTTP_1_1
- 允许值:http/1.1、h2 http/1.1、h2
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 依赖项:SSL上下文服务设置为任何指定的值
- 监听端口:监听传入连接的端口。
- 显示名称:监听端口
- 描述:监听传入连接的端口
- API名称:监听端口
- 表达式语言作用域:JVM级别定义的环境变量和系统属性
- 敏感:否
- 是否必需:是
- 每秒最大接收数据量:每秒接收的最大数据量,这允许将带宽限制为指定的数据速率;如果未指定,则不限制数据速率。
- 显示名称:每秒最大接收数据量
- 描述:每秒接收的最大数据量,这允许将带宽限制为指定的数据速率;如果未指定,则不限制数据速率。
- API名称:每秒最大接收数据量
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:否
- 最大未确认流文件时间:在流文件从缓存中移除之前,等待其被确认的最长时间。
- 显示名称:最大未确认流文件时间
- 描述:在流文件从缓存中移除之前,等待其被确认的最长时间。
- API名称:Max Unconfirmed Flowfile Time
- 默认值:60秒
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 最大线程池大小:嵌入式Jetty服务器使用的最大线程数。该值可在8到1000之间设置。此属性的值会影响流的性能和操作系统,因此只有在合理的情况下才应更改默认值。如果只有少量HTTP客户端连接到服务器,小于默认值的值可能适用;如果预计有大量HTTP客户端同时向服务器发出请求,则较大的值可能适用。
- 显示名称:最大线程池大小
- 描述:嵌入式Jetty服务器使用的最大线程数。该值可在8到1000之间设置。此属性的值会影响流的性能和操作系统,因此只有在合理的情况下才应更改默认值。如果只有少量HTTP客户端连接到服务器,小于默认值的值可能适用;如果预计有大量HTTP客户端同时向服务器发出请求,则较大的值可能适用。
- API名称:max-thread-pool-size
- 默认值:200
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 多部分读取缓冲区大小:传入文件内容写入磁盘的阈值大小。仅适用于Content-Type为multipart/formdata的请求。用于防止拒绝服务类型的攻击,避免堆内存或磁盘空间被填满。
- 显示名称:多部分读取缓冲区大小
- 描述:传入文件内容写入磁盘的阈值大小。仅适用于Content-Type为multipart/form-data的请求。用于防止拒绝服务类型的攻击,避免堆内存或磁盘空间被填满。
- API名称:multipartread-buffer-size
- 默认值:512 KB
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 多部分请求最大大小:请求的最大大小。仅适用于Content-Type为multipart/form-data的请求,用于防止拒绝服务类型的攻击,避免堆内存或磁盘空间被填满。
- 显示名称:多部分请求最大大小
- 描述:请求的最大大小。仅适用于Content-Type为multipart/form-data的请求,用于防止拒绝服务类型的攻击,避免堆内存或磁盘空间被填满。
- API名称:multipart-request-maxsize
- 默认值:1 MB
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 记录读取器:用于将传入的流文件解析为记录的记录读取器。
- 显示名称:记录读取器
- 描述:用于将传入的流文件解析为记录的记录读取器
- API名称:record-reader
- 服务接口:org.apache.nifi.serialization.RecordReaderFactory
- 服务实现:org.apache.nifi.avro.AvroReader、org.apache.nifi.cef.CEFReader、org.apache.nifi.csv.CSVReader、org.apache.nifi.excel.ExcelReader、org.apache.nifi.grok.GrokReader、org.apache.nifi.json.JsonPathReader、org.apache.nifi.json.JsonTreeReader、org.apache.nifi.services.protobuf.ProtobufReader、org.apache.nifi.lookup.ReaderLookup、org.apache.nifi.record.script.ScriptedReader、org.apache.nifi.syslog.Syslog5424Reader、org.apache.nifi.syslog.SyslogReader、org.apache.nifi.windowsevent.WindowsEventLogReader、org.apache.nifi.xml.XMLReader、org.apache.nifi.yaml.YamlTreeReader
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:否
- 记录写入器:用于在记录转换后对其进行序列化的记录写入器。
- 显示名称:记录写入器
- 描述:用于在记录转换后对其进行序列化的记录写入器
- API名称:record-writer
- 服务接口:org.apache.nifi.serialization.RecordSetWriterFactory
- 服务实现:org.apache.nifi.avro.AvroRecordSetWriter、org.apache.nifi.csv.CSVRecordSetWriter、org.apache.nifi.text.FreeFormTextRecordSetWriter、org.apache.nifi.json.JsonRecordSetWriter、org.apache.nifi.lookup.RecordSetWriterLookup、org.apache.nifi.record.script.ScriptedRecordSetWriter、org.apache.nifi.xml.XMLRecordSetWriter
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 依赖项:记录读取器设置为任何指定的值
- 请求头最大大小:发送到此处理器的请求中支持的HTTP头的最大大小。
- 显示名称:请求头最大大小
- 描述:发送到此处理器的请求中支持的HTTP头的最大大小
- API名称:请求头最大大小
- 默认值:8 KB
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:是
- 返回代码:每次HTTP调用后返回的HTTP返回代码。
- 显示名称:返回代码
- 描述:每次HTTP调用后返回的HTTP返回代码
- API名称:返回代码
- 默认值:200
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:否
- SSL上下文服务:SSL上下文服务支持HTTPS。
- 显示名称:SSL上下文服务
- 描述:SSL上下文服务支持HTTPS
- API名称:SSL上下文服务
- 服务接口:org.apache.nifi.ssl.SSLContextProvider
- 服务实现:org.apache.nifi.ssl.PEMEncodedSSLContextProvider、org.apache.nifi.ssl.StandardRestrictedSSLContextService、org.apache.nifi.ssl.StandardSSLContextService
- 表达式语言作用域:不支持
- 敏感:否
- 是否必需:否
关系
名称 | 描述 |
成功 | 成功接收的流文件的关系 |
用例
解包POST请求中接收到的FlowFileV3内容
描述
解包POST请求中接收到的FlowFileV3内容。
注意事项
Content-Type为application/flowfile-v3的POST请求,其有效负载将被解释为FlowFileV3格式,并会自动解包。这将输出FlowFileV3格式内的原始流文件,无需单独的解包内容处理器。
关键词
flowfile、flowfilev3、unpackConfiguration、纯文本
此ListenHTTP的功能始终开启,无需配置。MergeContent和PackageFlowFile处理器可以生成FlowFileV3格式的数据。