Apache NiFi - API



NiFi 提供了大量的 API,帮助开发人员从任何其他工具或自定义开发的应用程序中更改和获取 NiFi 的信息。在本教程中,我们将使用谷歌 Chrome 浏览器中的 postman 应用程序来解释一些示例。

要将 postman 添加到您的 Google Chrome 中,请访问下面提到的 URL 并点击添加到 Chrome 按钮。您现在将看到一个新的应用程序添加到您的 Google Chrome 中。

Chrome 网上应用商店

NiFi REST API 的当前版本是 1.8.0,文档位于下面提到的 URL 中。

https://nifi.apache.org/docs/nifi-docs/rest-api/index.html

以下是最常用的 NiFi REST API 模块 -

  • http://<nifi url>:<nifi port>/nifi-api/<api-path>

  • 如果启用了 HTTPS:https://<nifi url>:<nifi port>/nifi-api/<api-path>

序号 API 模块名称 api-path 描述
1 访问 /access 用于对用户进行身份验证并从 NiFi 获取访问令牌。
2 控制器 /controller 用于管理集群和创建报告任务。
3 控制器服务 /controller-services 用于管理控制器服务和更新控制器服务引用。
4 报告任务 /reporting-tasks 用于管理报告任务。
5 数据流 /flow 用于获取数据流元数据和组件状态以及查询历史记录
6 处理组 /process-groups 用于上传和实例化模板以及创建组件。
7 处理器 /processors 用于创建和调度处理器并设置其属性。
8 连接 /connections 用于创建连接,设置队列优先级和更新连接目标
9 FlowFile 队列 /flowfile-queues 用于查看队列内容,下载 FlowFile 内容和清空队列。
10 远程处理组 /remote-process-groups 用于创建远程组并启用传输。
11 溯源 /provenance 用于查询溯源和搜索事件血缘关系。

现在让我们考虑一个示例并在 postman 上运行以获取有关正在运行的 NiFi 实例的详细信息。

请求

GET https://127.0.0.1:8080/nifi-api/flow/about

响应

{
   "about": {
      "title": "NiFi",
      "version": "1.7.1",
      "uri": "https://127.0.0.1:8080/nifi-api/",
      "contentViewerUrl": "../nifi-content-viewer/",
      "timezone": "SGT",
      "buildTag": "nifi-1.7.1-RC1",
      "buildTimestamp": "07/12/2018 12:54:43 SGT"
   }
}
广告