【n8n教程】:创建你的第一个工作流

95 阅读6分钟

【n8n教程】:创建你的第一个工作流

一、什么是工作流?

在 n8n 里:

  • 工作流(Workflow):就是一条自动化流程。
  • 节点(Node):每一步要做的事情,比如“定时触发”“发邮件”“请求接口”等。
  • 画布(Workflow Canvas):中间那块白板,你把节点拖上去并连接起来,就组成一个完整工作流。 可以把它想象成“搭乐高”: 每个节点是一个乐高积木,连接方式决定了流程逻辑。

下面是一张典型的 n8n 工作流界面示意图,会帮助你对整体布局有个直观印象(左侧菜单、中间画布、右侧节点配置):


二、如何新建一个 n8n 工作流?

2.1 方式一:从左侧菜单创建

  1. 登录你的 n8n。
  2. 看屏幕左侧垂直菜单,找到“Workflows / 工作流”所在的区域,上面会有一个 「+」或「Create」按钮
  3. 点击这个按钮,选择 Workflow(工作流)
  4. 如果你的实例支持 Projects(项目)
    • 选择新工作流要创建在:
      • Personal space(个人空间),或
      • 某个具体 Project(项目) 里。
    • 社区版一般只有个人空间,默认就行。5. 进入画布后,界面中间会提示你 “Add first step…”,引导你添加第一个节点。

2.2 方式二:从 Overview 页面或项目里创建

有时你是先在 Overview(总览)页面 / 某个 项目详情页 里浏览,这时可以这样新建:

  1. 打开左侧菜单的 Overview
  2. 右上角通常会有一个 「Create」按钮
  3. 点击「Create」,选择 Workflow
  4. 如果你是在:
    • Overview 页面点击:工作流会建在你的 个人空间
    • 某个项目页面点击:工作流会建在 当前项目 里。 不管用哪种方式,最后都会落到同一个地方:工作流画布,等你添加第一个节点。

三、第一步必须做:添加一个触发节点(Trigger)

新建工作流后,你会看到画布中间有一行字:“Add first step…”。 触发节点的作用只有一个:定义工作流从哪里开始、在什么情况下启动

常见的触发方式包括:

  • Manual Trigger / 手动触发:用于测试。
  • Schedule Trigger / 定时触发:每天 / 每周 / 每小时自动运行。
  • Webhook Trigger / Webhook:由外部 HTTP 请求来触发,比如表单提交。
  • 各种 App 触发器:如“有新表单提交”“有新邮件”等。

一个典型的定时触发节点大概长这样(示意图):

3.1 添加第一个触发节点(推荐:Manual Trigger 做测试)

面向完全新手,建议先从最简单的 Manual Trigger(手动触发) 开始:

  1. 在画布中间点击 “Add first step…”
  2. 搜索并选择 Manual Trigger
  3. n8n 会在画布上创建一个“Manual Trigger”节点,同时右侧打开这个节点的配置面板(一般不用改任何参数)。

这样,你已经有了一个“可以手动点击执行”的起点节点。


四、测试阶段:如何「手动运行」工作流?

文档中单独强调了一个点:开发 / 测试时,经常需要手动运行工作流。 无论你的工作流有没有触发节点,只要你想主动运行一次,都可以:

  1. 在编辑页面右上角,找到 「Execute Workflow」按钮
  2. 点击它,n8n 会从第一个节点开始依次执行整条工作流。
  3. 执行过程中,你可以看到每个节点上的小绿点,表示执行成功;点击节点可以查看输出数据。 适用场景:
  • 正在配置节点,想看看目前的数据有没有走对;
  • 工作流还没准备好上线,不想让它自动跑,只想本地调试;
  • 工作流里根本没有触发器(比如只是一个一次性数据清洗脚本)。

五、上线阶段:如何「自动运行」工作流?

要让工作流在后台自动跑,必须满足两个条件

  1. 工作流里有触发节点:比如 Schedule Trigger、Webhook Trigger、来自某个应用的 On App Event 等。
  2. 工作流处于 Active(激活)状态

5.1 工作流默认是 Inactive(未激活)的

这意味着:

  • 你可以随便改、随便测;
  • 即便你的触发器设置了定时或 Webhook,它也不会真正自动执行;
  • 此时要运行,只能点击 「Execute Workflow」 手动执行。

5.2 如何激活 / 停用工作流?

  1. 打开你的工作流编辑页面。
  2. 在顶部工具栏或标题附近,找到状态切换控件:Inactive / Active 开关
  3. 点击切换到 Active,表示工作流已“上线”:
    • 当触发条件满足时(时间到了、Webhook 被调用、收到新事件等),工作流会自动运行。4. 需要暂停时,再切回 Inactive,就不会再自动触发。

六、一个完整实操例子:手动运行的「打招呼」工作流

6.1 目标

实现一个最简单的自动化流程:

  • 手动触发工作流;
  • 工作流生成一条消息 “早安,这是来自 n8n 的自动消息!”
  • 在 n8n UI 中查看输出结果。

这个例子不依赖任何外部服务或凭据,你只要有 n8n,就能跑起来

6.2 实操步骤

  1. 创建工作流
    • 按前文的任意一种方式点击 Create Workflow
    • 把工作流命名为:Hello n8n Manual Demo
  2. 添加 Manual Trigger 节点
    • 画布中点击 Add first step…
    • 搜索 Manual Trigger,添加到画布。
  3. 添加 Set 节点,生成提示文本
    • 在 Manual Trigger 右侧点击节点上的「+」连接点或画布上的「+」,添加新节点。
    • 搜索 Set,添加到画布。
    • 在右侧配置面板中:
      • 确保 Keep Only Set(仅保留设置字段) 为 true(有的版本叫「Keep only set」)。
      • Values → String 里添加一行:
        • Name:message
        • Value:早安,这是来自 n8n 的自动消息!
  4. 连接节点
    • 确认画布上 Manual Trigger → Set 两个节点用一条连线连在一起。
  5. 手动运行
    • 点击右上角 Execute Workflow
    • 执行完成后,点选 Set 节点,在右侧或下方的 Output / Data 区域查看结果:
      • 你会看到一条数据,其中字段 message 的值正是你刚刚设置的那句话。

到这一步,你已经完整走通了:创建 → 构建 → 手动运行 → 查看输出 这一整套闭环。


七、可直接导入的工作流 JSON(完整示例)

下面是上面这个示例工作流的 JSON 导出代码,可以在 n8n 中直接导入:

导入方式:

  1. 在 n8n 左侧菜单中进入 Workflows
  2. 点击右上角的 「Import from file / Import from clipboard」(不同版本文案略有不同)。
  3. 选择 From clipboard,把下面这段 JSON 整段复制粘贴进去。
  4. 点击导入,保存后即可使用。
{
  "name": "Hello n8n Manual Demo",
  "nodes": [
    {
      "id": "Manual Trigger",
      "name": "Manual Trigger",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        260,
        300
      ],
      "parameters": {}
    },
    {
      "id": "Set Message",
      "name": "Set",
      "type": "n8n-nodes-base.set",
      "typeVersion": 1,
      "position": [
        540,
        300
      ],
      "parameters": {
        "keepOnlySet": true,
        "values": {
          "string": [
            {
              "name": "message",
              "value": "早安,这是来自 n8n 的自动消息!"
            }
          ]
        }
      }
    }
  ],
  "connections": {
    "Manual Trigger": {
      "main": [
        [
          {
            "node": "Set",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {}
}

导入后,你可以:

  • 按上一节所述点击 Execute Workflow 手动运行;
  • 然后尝试:
    • Manual Trigger 换成 Schedule Trigger,实现每天早上自动跑一次;
    • Set 后面再加一个节点(比如 Email、Telegram 等),把这条消息真正发出去。