第 9 章

常用内置节点

Ch09 常用内置节点

n8n 内置了 400+ 节点,覆盖从数据库到文件系统、从邮件到加密的几乎所有基础操作。这些节点不需要任何外部依赖,开箱即用。本章重点讲解六类最常用的内置节点:Email(邮件发送)、MySQL/PostgreSQL(数据库操作)、Read/Write Binary File(文件读写)、FTP/SFTP(文件传输)、RSS Feed(订阅抓取)、Crypto(加解密),并在最后提供一张节点选型速查表帮助你快速做决策。

Email 节点:SMTP 邮件发送

n8n 的 Send Email 节点通过标准 SMTP 协议发送邮件,兼容 Gmail、Outlook、企业邮箱等所有支持 SMTP 的服务。配置分两步:先在 Credentials 中保存 SMTP 连接信息,再在节点中填写收件人和邮件内容。

凭证配置(SMTP)

在 n8n 的 Credentials 管理界面新建一个"SMTP"凭证,填写以下字段:

节点参数

批量发送邮件的正确姿势: 配合 Loop Over Items 节点,对收件人列表逐一发送个性化邮件。在 Subject 和 HTML 中使用 {{ $json.name }} 等表达式插入每位收件人的专属信息,避免群发暴露所有收件人。

MySQL / PostgreSQL:数据库操作完全指南

n8n 分别提供独立的 MySQL 和 PostgreSQL 节点,接口设计高度一致,掌握其中一个即可触类旁通。两者均支持 SSL 连接,可直接对接云数据库(RDS、PlanetScale 等)。

四种操作模式

Execute Query(执行 SQL):直接写原生 SQL,最灵活。适合复杂查询、多表 JOIN、存储过程调用。查询中可嵌入 n8n 表达式:

-- Execute Query 模式示例:带参数的复杂查询
SELECT
  o.id,
  o.amount,
  o.status,
  u.name AS user_name,
  u.email
FROM orders o
JOIN users u ON o.user_id = u.id
WHERE
  o.created_at >= '{{ $json.startDate }}'
  AND o.status = 'pending'
ORDER BY o.created_at DESC
LIMIT 100;

Insert(插入行):图形化填写字段名和值,n8n 自动生成 INSERT 语句。支持批量插入——上游若有多条数据项,节点会把所有记录一次性插入,效率远高于在 Loop 内逐条执行。

Update(更新行):指定 WHERE 条件字段(如 id)和需要更新的字段映射。

Delete(删除行):指定 WHERE 条件字段,执行后返回受影响的行数。

事务处理

对于需要原子性的多步操作(如"扣减库存 + 创建订单"),在 Execute Query 模式中手动编写 BEGINCOMMITROLLBACK 语句。

文件读写:Read / Write Binary File

n8n 把文件内容存储在数据项的"二进制字段"中(Binary Data),所有文件操作节点都围绕这个字段进行。

Read Binary File(读文件):指定服务器上的文件绝对路径,节点将文件内容读入二进制字段(默认字段名 data)。后续可以直接把这个字段作为邮件附件、HTTP 请求的 Body,或传给 Move Binary Data 节点进行格式转换。

Write Binary File(写文件):将上游二进制字段的内容写入服务器指定路径。常用于把 HTTP Request 下载的文件、LLM 生成的文本或数据库导出的 CSV 保存到磁盘,供后续脚本或定时任务使用。

路径权限: n8n 进程需要对目标目录有写权限。Docker 部署时,通过 volumes 挂载宿主机目录到容器内,并确保目录权限为 node 用户可写(UID 1000)。

FTP / SFTP:文件上传下载

FTP 节点和 SFTP 节点在界面上完全一致,区别仅在于凭证类型(FTP 凭证 vs SFTP 凭证,后者支持密钥对认证)。支持的操作包括:

常见应用场景:财务系统每日生成对账文件到 FTP,n8n 定时下载 → 解析 → 入库 → 发送邮件汇报;或者报表生成后自动上传到客户指定的 SFTP 目录。

RSS Feed:订阅内容自动抓取

RSS Feed Read 节点订阅一个或多个 RSS / Atom 源,返回最新条目列表。每个条目作为一个独立数据项输出,包含 titlelinkpubDatecontent 等标准字段。

// RSS Feed 节点输出的单条数据项结构
{
  "title": "OpenAI 发布 GPT-5 技术报告",
  "link": "https://openai.com/blog/gpt-5",
  "pubDate": "2025-04-20T08:00:00.000Z",
  "content": "<p>今日,OpenAI 正式发布...</p>",
  "contentSnippet": "今日,OpenAI 正式发布...",
  "guid": "https://openai.com/blog/gpt-5",
  "isoDate": "2025-04-20T08:00:00.000Z"
}

典型工作流:Cron 触发器(每小时)→ RSS Feed(抓取行业资讯)→ IF(过滤关键词)→ HTTP Request(推送飞书群)。这是构建信息流监控机器人的标准范式,不需要任何爬虫代码。

Crypto 节点:数据加解密与哈希

Crypto 节点提供常见的密码学操作,无需引入任何外部库。

哈希(Hash):支持 MD5、SHA1、SHA224、SHA256、SHA384、SHA512、SHA3。输入字段内容,输出对应的十六进制哈希字符串。常用于生成文件校验码、对密码做不可逆摘要。

HMAC:输入密钥和数据,输出 HMAC 签名。钉钉机器人的加签安全模式、GitHub Webhook 的签名验证都用到 HMAC-SHA256。

AES 加解密:支持 AES-128/192/256,CBC/ECB 模式。在自动化流程中加密敏感字段(如身份证号、银行卡号)后落库,读取时解密还原,满足合规要求。

节点选型速查表

需求场景 推荐节点 备注
发送邮件(含附件) Send Email 需 SMTP 凭证;批量发送配合 Loop
查询 / 写入关系型数据库 MySQL 或 PostgreSQL Execute Query 最灵活
读取本地文件 Read Binary File 需服务器文件读权限
生成并保存报告到磁盘 Write Binary File 注意目录写权限
从 FTP/SFTP 拉取数据文件 FTP / SFTP SFTP 支持私钥认证更安全
监控 RSS 资讯并推送 RSS Feed Read 配合 Cron 触发器
验证 Webhook 签名 Crypto(HMAC-SHA256) 配合 Code 节点完成完整验签逻辑
生成文件 MD5 校验码 Crypto(Hash) 处理文本字段;二进制文件需先转 base64
本章评分
4.7  / 5  (35 评分)

💬 留言讨论