Apache NiFi 2.x 处理器:ConnectWebSocket 2.2.0
概述
Bundle:org.apache.nifi | nifi-websocket-processors-nar
描述
充当WebSocket客户端端点,与远程WebSocket服务器进行交互。当配置此处理器的WebSocket客户端从远程WebSocket服务器接收消息时,FlowFiles会根据接收到的消息类型传输到下游关系。如果有新的FlowFile传递给处理器,之前的会话将被关闭,任何正在发送的数据将被中止。
标签
WebSocket、消费、监听、订阅
输入要求
允许
支持敏感动态属性
否
ConnectWebSocket 2.2.0的更多详细信息
ConnectWebSocket
此处理器充当WebSocket客户端端点,与远程WebSocket服务器进行交互。它能够从WebSocket服务器接收消息,并根据接收到的消息类型将它们传输到下游关系。
处理器可能有一个传入关系,在这种情况下,FlowFile属性会传递给它的WebSocket客户端服务。这可用于微调连接配置(例如URL和标头)。例如,“dynamic.url = currentValue”的FlowFile属性可以在WebSocket客户端服务中通过${dynamic.url}表达式进行引用。
可以在传入的FlowFile中定义自定义WebSocket标头作为额外属性。属性键应以“header.”开头,接着是标头键。例如:“header.Authorization”。属性值将是相应的标头值,例如:“header.Authorization”。属性值将是相应的标头值。如果有新的FlowFile传递给处理器,之前的会话将被关闭,任何正在发送的数据将被中止。
- header.Autorization | Basic base64UserNamePassWord
- header.Content-Type | application, audio, example
对于多个标头值,请提供用逗号分隔的列表。
属性
WebSocket客户端控制器服务
一个可以连接到WebSocket服务器的WebSocket客户端控制器服务。
- 显示名称:WebSocket客户端
- 控制器服务描述:一个可以连接到WebSocket服务器的WebSocket客户端控制器服务。
- API名称:websocket-client-controller-service
- 服务接口:org.apache.nifi.websocket.WebSocketClientService
- 服务实现:org.apache.nifi.websocket.jetty.JettyWebSocketClient
- 表达式语言作用域:不支持
- 敏感:否
- 必填:是
WebSocket客户端ID
用于标识WebSocket会话的客户端ID。它在WebSocket客户端控制器服务中应该是唯一的。否则,在启动时会抛出
WebSocketConfigurationException异常。
- 显示名称:WebSocket客户端ID
- 描述:用于标识WebSocket会话的客户端ID。它在WebSocket客户端控制器服务中应该是唯一的。否则,在启动时会抛出WebSocketConfigurationException异常。
- API名称:websocket-clientid
- 表达式语言作用域:不支持
- 敏感:否
- 必填:是
关系
名称 | 描述 |
disconnected | WebSocket会话已断开连接 |
connected | WebSocket会话已建立 |
binary message | WebSocket二进制消息输出 |
failure | 连接失败时包含连接配置属性(如URL或HTTP标头)的FlowFile |
text message | WebSocket文本消息输出 |
success | 连接成功时包含连接配置属性(如URL或HTTP标头)的FlowFile |
写入属性
名称 | 描述 |
websocket.controller.service.id | WebSocket控制器服务ID。 |
websocket.session.id | 已建立的WebSocket会话ID。 |
websocket.endpoint.id | WebSocket端点ID。 |
websocket.local.address | WebSocket客户端地址。 |
websocket.remote.address | WebSocket服务器地址。 |
websocket.message.type | TEXT或BINARY。 |