N8N中文教程
使用 n8n/Getting_started/Text_courses/Level_one/Building_the_workflow

1. 从数据仓库获取数据#

在本工作流部分中,您将学习如何使用 HTTP Request 节点通过发送 HTTP 请求来获取数据。 完成本节后,您的工作流将如下所示: 查看工作流文件 首先,我们先设定场景,开始构建 Nathan 的工作流。

创建新工作流#

打开您的编辑器界面(Editor UI),并通过以下两个命令之一创建一个新的工作流:

  • 在键盘上按下 Ctrl+Alt+NCmd+Option+N
  • 打开左侧菜单,进入 Workflows(工作流)页面,然后选择 Add workflow(添加工作流)。

将此新工作流命名为“Nathan 的工作流”。

你需要做的第一件事是从 ABCorp 的旧数据仓库中获取数据。

在之前的章节中,你使用了一个专为特定服务设计的节点(例如 Hacker News)。但并非所有应用或服务都有专用节点,比如 Nathan 公司使用的传统数据仓库就是如此。

虽然我们无法直接导出数据,但 Nathan 告诉我们,该数据仓库提供了几个 API 接口。这正是我们通过 n8n 中的 HTTP Request 节点访问数据所需要的全部信息。

没有对应服务的节点怎么办?

HTTP Request 节点是最通用的节点之一,允许你发送 HTTP 请求以从各种应用或服务中查询数据。你可以用它来访问那些在 n8n 中没有专用节点的应用或服务的数据。

添加一个 HTTP Request 节点#

现在,在你的编辑器界面(Editor UI)中,按照课程 添加节点 中所学的方法添加一个 HTTP Request 节点。节点配置窗口将会打开,你需要在此设置一些参数。

HTTP Request 节点HTTP Request 节点

这个节点需要使用凭据(credentials)进行身份验证。

凭据(Credentials)

凭据(Credentials) 是用于识别用户或服务的一组唯一信息,使其能够访问应用程序或服务(在我们的场景中,这些服务以 n8n 节点的形式体现)。最常见的凭据形式是用户名和密码,但根据服务的不同,也可能采用其他形式。

本例中,你需要使用注册本课程时从 n8n 发送的邮件中获得的 ABCorp 数据仓库 API 的凭据。如果你尚未注册,请先 点击此处注册。

在 HTTP Request 节点的 参数(Parameters) 中,进行以下设置:

  • 方法(Method):默认应为 GET,请确保已设置为 GET。
  • URL:填入你在注册课程后收到的邮件中的 Dataset URL
  • 发送请求头(Send Headers):将此选项切换为开启(true)。在 Specify Headers 中,确保选择了 Using Fields Below
    • Header Parameters > Name:输入 unique_id
    • Header Parameters > Value:填入你在注册课程邮件中收到的 Unique ID
  • 认证方式(Authentication):选择 Generic Credential Type。此选项要求提供凭据后才能访问数据。
    • Generic Auth Type:选择 Header Auth。(选择“Generic Credential Type”后,该字段会出现。)
    • Credential for Header Auth:要添加你的凭据,请选择 + Create new credential,这将打开“Credentials 窗口”。
    • 在 Credentials 窗口中,将 Name 设置为你在注册邮件中收到的 Header Auth name
    • 在 Credentials 窗口中,将 Value 设置为你在注册邮件中收到的 Header Auth value
    • 单击 Credentials 窗口中的 Save 按钮保存凭据。你的 Credentials Connection 窗口应如下图所示: HTTP Request 节点凭据HTTP Request 节点凭据

凭证命名 默认情况下,新的凭证名称遵循“账户”格式。你可以通过点击名称来重命名凭证,操作方式与重命名节点类似。建议为凭证命名时体现应用/服务、类型以及用途信息。采用统一的命名规范有助于更好地追踪和识别你的凭证。 保存后,退出凭证窗口以返回到 HTTP 请求节点。

获取数据#

在 HTTP 请求节点窗口中选择 执行步骤(Execute step) 按钮。HTTP 请求结果的表格视图应如下所示:

HTTP Request 节点输出HTTP Request 节点输出

这个界面你应该已经熟悉了,来自 构建一个小型工作流 页面。

这是 Nathan 需要处理的 ABCorp 数据仓库中的数据。该数据集包含来自 30 名客户的数据,共五列:

  • orderID:每笔订单的唯一 ID。
  • customerID:每位客户的唯一 ID。
  • employeeName:负责该客户的同事姓名。
  • orderPrice:客户订单的总金额。
  • orderStatus:客户订单的状态是 booked(已预订)还是仍在 processing(处理中)。

下一步?#

Nathan 🙋:太棒了!你仅用一个节点就自动化了我工作中一个重要的部分。现在我不需要每次都手动获取数据,而是可以用 HTTP 请求节点自动获取信息。 你 👩‍🔧:没错!接下来我会再帮你一步,把刚刚获取的数据插入到 Airtable 中。

查阅文档 此页面 !Thumbs up有帮助 !Thumbs down没有帮助 感谢您的反馈! 提交 上一页 设计工作流 下一页 将数据插入 Airtable 由 Material for MkDocs Insiders 提供支持