
## 工作流概述
这是一个基于n8n Code节点的实践教程,通过简单的数据处理任务涵盖了基础和高级概念。该工作流展示了如何利用X402支付协议和1Shot API来实现工作流的货币化功能。
## 工作原理
### 提供样本数据
工作流从用户样本列表开始,包含Alice、Bob、Charlie和Alex等用户的基本信息。
### 逐项处理(每个项目运行一次)
第一个Code节点遍历每个用户,计算他们的fullName和age。这演示了使用$input.item.json进行逐项数据操作的基本方法。
### 获取外部数据(高级功能)
第二个Code节点展示了更高级的功能。对于每个用户,它使用内置的this.helpers.httpRequest函数调用外部API(genderize.io),通过预测性别来丰富数据。
### 一次性处理所有项目(所有项目运行一次)
第三个Code节点接收完全丰富的用户列表,仅运行一次。它使用$items()访问整个列表并计算averageAge,返回单个摘要项目。
### 创建二进制文件
最终的Code节点再次获取完全丰富的用户列表,并创建一个二进制CSV文件,展示如何在JavaScript中使用二进制数据Buffer。
## 设置步骤
**设置时间:< 1分钟**
这个工作流是一个自包含的教程,无需额外设置。
### 操作指南
1. **探索节点**:点击每个Code节点阅读代码和注释,了解从基础到高级的每个步骤
2. **运行工作流**:点击"Execute Workflow"查看实际效果
3. **检查输出**:执行后点击每个节点查看数据在每个阶段的转换方式
4. **实验**:尝试更改1. Sample Data节点中的数据,或修改Code节点中的代码观察变化
## 节点详细说明
### 1. Sample Data节点
– 创建用户列表
– 可编辑值进行实验
### 2. Split Out Users节点
– 将列表拆分为多个项目,每个用户一个
– 为后续Code节点逐项处理做准备
### 3. Process Each User节点(逐项处理)
– 运行模式:Run Once for Each Item
– 关键概念:$input.item.json访问当前项目数据
– 返回包含新数据的对象
### 4. Fetch External Data节点(高级功能)
– 运行模式:Run Once for Each Item
– 使用this.helpers.httpRequest调用外部API
– 演示异步操作和await用法
### 5. Calculate Average Age节点(聚合处理)
– 运行模式:Run Once for All Items
– 关键概念:$items()返回所有项目的数组
– 创建包含统计结果的单个新项目
### 6. Create a Binary File节点(专家级)
– 运行模式:Run Once for All Items
– 使用this.helpers.prepareBinaryData创建二进制文件
– 演示Buffer处理二进制数据
## 技术亮点
– **Code节点多功能性**:展示了n8n Code节点的多种运行模式
– **外部API集成**:演示了如何在代码中直接调用外部服务
– **数据聚合**:展示了如何处理和汇总多个数据项
– **文件生成**:演示了如何创建和输出二进制文件
– **货币化潜力**:通过X402支付协议和1Shot API展示了工作流商业化的可能性

评论(0)