Make与Pipedream高级用法
High Contrast
Dark Mode
Light Mode
Sepia
Forest
4 min read748 words

Make与Pipedream高级用法

掌握基础连接器之后,真正的生产力提升来自于数据转换、条件路由和可靠的错误处理。

Make高级功能全景

graph TD TRIGGER[触发器] --> ROUTER{路由器\nRouter} ROUTER -->|条件A| BRANCH_A[分支A处理] ROUTER -->|条件B| BRANCH_B[分支B处理] ROUTER -->|其他| FALLBACK[默认处理] BRANCH_A --> TRANSFORM[数据转换\nArray/Text函数] TRANSFORM --> ITERATOR[迭代器\n处理数组] ITERATOR --> AGG[聚合器\n合并结果] AGG --> OUTPUT[输出动作] BRANCH_A --> TOOLS[工具模块] TOOLS --> SLEEP[延迟等待] TOOLS --> SETVAR[设置变量] TOOLS --> FILTER[条件过滤器] style ROUTER fill:#e3f2fd,stroke:#1565c0,stroke-width:2px style TRANSFORM fill:#fff9c4,stroke:#f57f17,stroke-width:2px

Make核心高级功能

数据转换函数

Make内置丰富的数据处理函数,无需代码即可完成复杂转换:

函数类别 常用函数 示例用途
文本处理 trim(), replace(), substring() 清洗客户姓名中的多余空格
数字计算 round(), abs(), formatNumber() 将金额格式化为两位小数
日期时间 formatDate(), addDays(), now() 计算合同到期日
数组操作 map(), filter(), sort(), length() 筛选金额>1000的订单
条件判断 if(), ifempty(), switch() 根据状态返回不同文本
类型转换 toNumber(), toString(), toDate() 将字符串日期转为日期类型

Webhook集成模式

sequenceDiagram participant 外部系统 participant Make Webhook participant 数据处理 participant 目标系统 外部系统->>Make Webhook: POST JSON数据 Make Webhook->>Make Webhook: 验证签名/Token Make Webhook->>数据处理: 解析并转换数据 数据处理->>目标系统: 写入处理结果 目标系统-->>数据处理: 确认响应 数据处理-->>Make Webhook: 处理完成 Make Webhook-->>外部系统: 200 OK(即时响应)

Webhook最佳实践: - 始终验证来源签名(HMAC-SHA256),防止恶意调用 - Webhook接收后立即返回200,异步处理数据(避免超时) - 为Webhook设置IP白名单(Make支持在Webhook设置中配置)

Pipedream高级用法

Pipedream的核心优势是可以在工作流中直接编写Node.js/Python代码:

代码步骤模板

// Pipedream代码步骤示例:清洗并转换订单数据
export default defineComponent({
async run({ steps, $ }) {
const orders = steps.trigger.event.body.orders;
// 过滤并转换数据
const processed = orders
.filter(order => order.amount > 100)  // 只处理金额>100的订单
.map(order => ({
id: order.order_id,
customer: order.customer_name.trim(),
amount: parseFloat(order.amount).toFixed(2),
date: new Date(order.created_at).toISOString().split('T')[0],
status: order.status === 'paid' ? '已付款' : '待付款'
}));
// 导出供后续步骤使用
return { orders: processed, count: processed.length };
}
});

Pipedream vs Make 数据处理对比

场景 Make方案 Pipedream方案 推荐
简单字段映射 可视化连线 代码步骤 Make
复杂数组处理 迭代器+聚合器 一段JS代码 Pipedream
正则表达式提取 内置函数 原生JS regex 相当
调用自定义API HTTP模块 axios/fetch Pipedream
跨步骤状态保存 变量工具 $.export() 相当

错误处理进阶

Make的错误处理路由

在Make中,为关键模块添加错误处理器:

  1. 右键点击模块 → 添加错误处理器
  2. 选择处理策略: - 忽略:跳过错误,继续下一条记录 - 回滚:撤销本次所有操作 - 中止:停止场景执行 - 中止并重新安排:稍后重试整个运行

构建可靠的重试机制

graph LR EXEC[执行操作] --> SUCCESS{成功?} SUCCESS -->|是| DONE[完成] SUCCESS -->|否| CHECK{重试次数\n<最大值?} CHECK -->|是| WAIT[等待\n指数退避] WAIT --> EXEC CHECK -->|否| DLQ[写入\n失败队列] DLQ --> NOTIFY[发送告警]

指数退避等待时间:第1次重试等1分钟,第2次等2分钟,第3次等4分钟,避免持续冲击失败的服务。

实践检查清单

下一节03-低代码平台选型指南 — Zapier vs Make vs n8n vs Pipedream,不同场景下的最优选择。