第 2 期:基础概念剖析 — 节点、触发器与线缆
工作流的三个建筑构件
在 n8n 中,所有的自动化逻辑都构建在三个基本概念之上。理解它们之间的关系,是掌握整个平台的基础。
graph TB
subgraph "n8n 工作流三要素"
direction LR
T["🔔 触发器
(Triggers)
何时开始?"]
N["⚙️ 节点
(Nodes)
做什么?"]
C["🔗 线缆
(Connections)
数据怎么传?"]
T -->|"启动工作流"| N
N -->|"通过线缆传递 Items"| N
end
style T fill:#6366f1,stroke:#4f46e5,color:#fff
style N fill:#22c55e,stroke:#16a34a,color:#fff
style C fill:#f59e0b,stroke:#d97706,color:#fff1. 触发器 (Triggers) — 工作流的起点
触发器决定了一个工作流何时被唤醒。n8n 提供了四大类触发方式:
| 触发类型 | 典型节点 | 工作原理 | 适用场景 |
|---|---|---|---|
| 手动触发 | Manual Trigger | 点击 "Test Workflow" 按钮 | 调试与测试 |
| 定时触发 | Schedule Trigger | 基于 Cron 表达式定时唤醒 | 每日报告、定期同步 |
| Webhook 触发 | Webhook | 外部 HTTP 请求命中端点 | API 回调、表单提交 |
| 事件触发 | Gmail Trigger / Telegram Trigger | 轮询或长连接监听第三方事件 | 新邮件处理、消息机器人 |
| 聊天触发 | Chat Trigger | n8n 内置聊天界面接收消息 | AI 对话机器人 |
sequenceDiagram
participant External as 外部系统
participant Trigger as 🔔 触发器
participant WF as ⚙️ 工作流引擎
participant Node1 as 节点 A
participant Node2 as 节点 B
Note over External,Trigger: 第一阶段:等待事件
External->>Trigger: 事件到达 (HTTP请求 / 新邮件 / 定时器 / 聊天消息)
Note over Trigger,WF: 第二阶段:唤醒工作流
Trigger->>WF: 携带初始 Data Items 启动执行
Note over WF,Node2: 第三阶段:逐节点执行
WF->>Node1: 传递 Items
Node1->>Node2: 加工后继续传递
Node2->>WF: 执行完毕,记录日志Webhook 触发器配置示例
# 当你启用一个 Webhook 触发器时,n8n 会自动生成两个 URL:
# 测试用 URL(仅在编辑器打开时生效)
# Test URL (only active when the editor is open)
https://your-n8n.com/webhook-test/unique-path-id
# 生产用 URL(工作流激活后永久生效)
# Production URL (active permanently after workflow is activated)
https://your-n8n.com/webhook/unique-path-id
// Webhook 节点收到 POST 请求后,会将 HTTP Body 转换为 n8n 的标准 Item 格式
// 例如,外部发来: POST { "name": "张三", "email": "[email protected]" }
//
// n8n 内部会将其包装为:
[
{
"json": { // json 是 n8n Item 的核心数据载体
"name": "张三", // 原始字段被完整保留
"email": "[email protected]",
"headers": { ... }, // HTTP 请求头信息
"params": { ... }, // URL 查询参数
},
"binary": { ... } // 如果有文件上传,会放在 binary 中
}
]
2. 节点 (Nodes) — 工作流的执行单元
节点是 n8n 中实际干活的人。每个节点接收上游传来的 Data Items,执行特定操作,然后将结果作为新的 Items 传给下游。
节点的六大类别
graph TB
subgraph "n8n 节点类型体系"
Root[全部节点 1000+]
Root --> Cat1[🔌 集成节点
Gmail / Slack / GitHub
直连第三方 API]
Root --> Cat2[⚙️ 核心节点
If / Switch / Merge / Set
数据流控制]
Root --> Cat3[💻 代码节点
Code (JS/Python)
自定义逻辑]
Root --> Cat4[🤖 AI 节点
Agent / LLM / Memory
大模型调用]
Root --> Cat5[📦 数据节点
Data Tables / Spreadsheet
持久化存储]
Root --> Cat6[🧩 社区节点
Community Nodes
npm 安装扩展]
end
style Root fill:#1a1d28,stroke:#ff6d5b,color:#fff
style Cat4 fill:#ff6d5b,stroke:#e55a4e,color:#fff节点的输入与输出
每个节点都有严格的 I/O 契约:
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
// 节点执行时的数据结构示例
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
// 🔵 输入 (Input): 上游节点传来的 Items 数组
const input = [
{ "json": { "id": 1, "name": "产品A", "price": 299 } },
{ "json": { "id": 2, "name": "产品B", "price": 59 } },
{ "json": { "id": 3, "name": "产品C", "price": 188 } }
];
// ⚙️ 节点处理 (Processing): 例如 If 节点按条件分流
// 条件: price > 100
// 🟢 输出 True 分支 (Output - true):
const outputTrue = [
{ "json": { "id": 1, "name": "产品A", "price": 299 } }, // ✓ 通过
{ "json": { "id": 3, "name": "产品C", "price": 188 } } // ✓ 通过
];
// 🔴 输出 False 分支 (Output - false):
const outputFalse = [
{ "json": { "id": 2, "name": "产品B", "price": 59 } } // ✗ 不满足条件
];
3. 线缆 (Connections) — 数据的高速公路
线缆是连接节点之间的有向边 (Directed Edge)。它不仅定义了执行顺序,还承载着 Data Items 的传输管道。
线缆的三种连接模式
graph LR
subgraph "模式1: 串行连接 (Sequential)"
S1[节点 A] --> S2[节点 B] --> S3[节点 C]
end
subgraph "模式2: 分支连接 (Branching)"
B1[If 节点] -->|True| B2[发送邮件]
B1 -->|False| B3[记录日志]
end
subgraph "模式3: 汇聚连接 (Merging)"
M1[API 源 1] --> M3[Merge 节点]
M2[API 源 2] --> M3
M3 --> M4[统一处理]
end关键规则:Items 透传机制
sequenceDiagram
participant NodeA as 节点 A (输出 3 Items)
participant Edge as 线缆 (管道)
participant NodeB as 节点 B (逐个处理)
Note over NodeA: 输出: [{id:1}, {id:2}, {id:3}]
NodeA->>Edge: 发射 3 个 Items
Note over NodeB: n8n 自动遍历!
不需要写 for 循环
Edge->>NodeB: Item 1 {id:1}
Note over NodeB: 执行第 1 次
Edge->>NodeB: Item 2 {id:2}
Note over NodeB: 执行第 2 次
Edge->>NodeB: Item 3 {id:3}
Note over NodeB: 执行第 3 次
Note over NodeB: 汇总: 3 个处理后的 Items⚠️ 核心理解:在 n8n 中,你几乎永远不需要手写循环。如果上游吐出了 N 个 Items,下游节点会自动被执行 N 次。这就是 n8n 的 Item-Driven 隐式循环机制,我们将在第 4 期深度展开。
4. 节点面板的三大视图
当你点击画布上的任何一个节点时,右侧会弹出详情面板,包含三个核心 Tab:
| Tab 名称 | 作用 | 何时查看 |
|---|---|---|
| Parameters | 配置节点的行为参数 | 构建工作流时 |
| Input | 查看上游传入的 Data Items | 调试数据流时 |
| Output | 查看节点执行后的输出结果 | 验证逻辑正确性时 |
// 示例:一个 Set 节点的 Output Tab 展示的内容
// Set 节点的作用是"设置/修改 Item 的字段"
{
"json": {
"fullName": "张三", // 新增字段: 合并了 firstName + lastName
"isVIP": true, // 新增字段: 基于条件计算
"registeredAt": "2026-04-09" // 新增字段: 当前日期
}
}
本期小结
mindmap
root((n8n 基础三要素))
触发器 Triggers
手动触发
定时触发 (Cron)
Webhook (HTTP)
事件触发 (Polling)
聊天触发 (Chat)
节点 Nodes
集成节点 (1000+ API)
核心节点 (If/Switch/Merge)
代码节点 (JS/Python)
AI 节点 (Agent/LLM)
数据节点 (Data Tables)
社区节点 (npm)
线缆 Connections
串行连接
分支连接
汇聚连接
Item 透传机制下一步
在 Ep 03 中,我们将动手实操——通过 Docker Compose 在本地 3 分钟内搭建一个完整的 n8n 实例,并配置好加密密钥与数据持久化。