Claude Code n8n 表达式技能:读取 Webhook JSON 的 body 字段
EnglishClaude Code 安装步骤
- 从固定版本 GitHub 工作副本获取完整的 `cli-tool/components/skills/workflow-automation/n8n/n8n-expression-syntax` 目录。
- 将目录放入目标项目的 `.claude/skills/`,确认 `.claude/skills/n8n-expression-syntax/SKILL.md` 存在,再从项目根目录启动 Claude Code 并输入 `/n8n-expression-syntax`。
中文摘要
根据 n8n 节点的实际输入修正表达式。重点区分当前项、其他节点和 Webhook 的 `body` 结构,并处理缺失字段。
SKILL.md 中文导读
可复现示例
用虚构测试项 `{"body":{"city":"Chiang Mai"}}`,在编辑字段节点读取 `body.city`。再用一个没有城市字段的测试项,要求返回「待确认」。工作步骤
- 先查看 Webhook 节点的测试输出,定位字段在顶层还是 `body` 中。
- 将表达式放到需要动态值的参数中,用正常和字段缺失两种样本查看预览。
验收方法
正常样本应得到 `Chiang Mai`,缺失样本应得到「待确认」。表达式使用当前项的正确层级,并在节点预览中核验两次。
GitHub 原文 · 更新日期
适用环境
Claude Code、固定版本技能目录,以及能查看测试项输入和表达式预览的 n8n 工作流。
常见问题
Webhook 数据为什么用 `$json.city` 得到空值?
先检查实际输入。若城市放在 `body` 对象里,应从 `$json.body` 下读取,并给缺失字段设置后备值。