场景导入:别再手动复制粘贴了,让 HTTP 请求为你打工
你是否曾陷入这样的循环:每天早上打开后台,手动复制 API 返回的数据,再粘贴到 Excel 或另一个系统中?或者,为了获取一个简单的天气预报,不得不打开浏览器、输入网址、点击、复制?这种重复性劳动不仅浪费时间,还容易出错。
在 N8N大学,我们坚信技术是为了解放生产力。HTTP Request 节点就是 n8n 自动化工作流中的“万能钥匙”。它能让你的机器人直接与互联网上的任何 API 对话,无论是获取数据、发送通知,还是触发其他系统的操作。
今天,笔者将带你从零开始,手把手配置 HTTP Request 节点,让你彻底掌握这个核心工具,把繁琐的搬运工作交给机器。
准备工作:三样东西缺一不可
在开始之前,请确保你已经具备了以下基础条件:
- 一个运行中的 n8n 实例:可以是本地安装的,也可以是云端部署的(推荐 Docker 方式)。
- 目标 API 的文档:你需要知道请求的地址(URL)、支持的方法(GET/POST 等)以及是否需要认证。
- 基本的 JSON 知识:理解什么是键值对,这将帮助你处理 API 返回的数据。
核心实操:四步搞定 HTTP Request
我们将通过一个实战案例来演示:获取 GitHub 上某个用户的公开信息。这是一个经典的 GET 请求场景。
步骤 1:添加节点并设置基础 URL
首先,在你的 n8n 画布上添加一个 HTTP Request 节点。在右侧的参数面板中:
- Method:选择
GET。 - URL:输入
https://api.github.com/users/n8n(这里以 n8n 的官方账号为例)。
此时,你可以点击右上角的“执行节点”,你会看到返回的 JSON 数据。这就是我们想要的原始数据。
步骤 2:处理响应数据(JSON 输出)
默认情况下,HTTP Request 节点可能只输出整个响应对象。为了提取我们需要的具体字段(比如用户的登录名),我们需要配置 Response 部分。
在参数面板中:
- Response:默认选中的是
Raw。为了方便后续节点处理,建议保持默认或选择JSON,n8n 通常能自动识别。 - Options -> Full Response:如果你需要状态码或响应头,勾选此项。通常我们只需要 Body 内容,保持默认不勾选即可。
步骤 3:使用 Query Parameters(查询参数)
很多 API 需要传递参数,比如分页、筛选等。不要手动拼接 URL,使用 Query Parameters 更优雅。
假设我们需要搜索 GitHub 仓库,并指定每页显示数量:
- 点击 Add Query Parameter。
- Name:输入
per_page。 - Value:输入
5。
你会发现 n8n 自动将 URL 变成了 https://api.github.com/users/n8n?per_page=5。这种方式既清晰又不易出错。
步骤 4:配置认证(Authentication)
这是新手最容易卡住的地方。如果 API 需要 Token 或 Basic Auth,千万别把密钥硬编码在 URL 里!
在 HTTP Request 节点的 Authentication 选项卡中:
- None:公开 API(如我们刚才的例子)。
- Header Auth:最常用。例如 GitHub 需要
Authorization: token YOUR_TOKEN或Bearer YOUR_TOKEN。 - Basic Auth:用户名和密码模式。
笔者建议:使用 n8n 的 Credentials(凭证)功能来管理密钥,这样既安全又方便复用。
避坑指南:实战中容易报错的细节
在 N8N大学 的教学实践中,以下几个错误是高频出现的:
- Content-Type 设置错误:当你发送 POST 请求时,如果请求体是 JSON,必须在 Headers 中添加
Content-Type: application/json。否则,很多后端服务会报 400 或 415 错误。 - SSL 证书问题:如果你的 n8n 运行在测试环境(如自签名证书的内网),请求 HTTPS 接口时可能会报 SSL 错误。在 Options 中勾选 Reject Unauthorized(取消勾选)可临时解决(生产环境请务必配置合法证书)。
- 超时设置:某些外部 API 响应较慢,默认的超时时间可能导致请求失败。在 Options 中可以调整 Timeout 值(默认为 30000ms)。
FAQ 问答
Q1: HTTP Request 节点支持哪些请求方法?
A: 它支持所有标准 HTTP 方法,包括 GET、POST、PUT、PATCH、DELETE、HEAD 和 OPTIONS。你可以根据 API 文档的需求灵活选择。
Q2: 如何在请求中发送二进制文件(如图片或 PDF)?
A: 在 Body 选项中,选择 Binary 类型,然后在字段名中选择你要发送的二进制数据流(通常来自上游的 Read Binary File 节点或 Webhook 上传的文件)。
Q3: 为什么我收到了 “401 Unauthorized” 错误?
A: 这通常意味着认证失败。请检查三点:1. API Key/Token 是否正确且未过期;2. 认证方式是否选对(Header Auth vs Basic Auth);3. 是否需要特定的 Scope(权限范围)。建议先在 Postman 等工具中测试通过,再迁移到 n8n。
总结与资源
HTTP Request 节点是 n8n 连接外部世界的桥梁。掌握它,意味着你拥有了无限的可能性——从简单的数据抓取到复杂的微服务集成。
N8N大学 建议你多动手实践,尝试连接你日常使用的工具(如 Slack、Notion、钉钉等)的 API。遇到问题不要怕,多查看 API 文档和 n8n 的日志,这是成长的必经之路。
如果你需要更多现成的工作流模板,欢迎访问我们的官网 n8ndx.com,获取更多实战案例。