HTTP Request 节点中的分页功能#
HTTP Request 节点支持分页功能。本页提供了一些配置示例,包括使用 HTTP 节点变量。
更多关于该节点的信息,请参考 HTTP Request。
/// 注意 | API 差异 不同的 API 以不同方式实现分页功能。请查阅您所用 API 的文档以获取详细信息。您需要了解以下内容:
- API 是否提供下一页的 URL?
- 是否存在 API 特定的页面大小或页码限制?
- API 返回数据的结构。 ///
启用分页功能#
在 HTTP Request 节点中,选择 Add Option > Pagination。
使用响应中的 URL 通过 $response
获取下一页#
如果 API 在响应中返回下一页的 URL:
- 将 Pagination Mode 设置为 Response Contains Next URL。n8n 会显示该选项的参数。
- 在 Next URL 中,使用表达式设置 URL。具体表达式取决于 API 返回的数据。例如,如果 API 在响应体中包含一个名为
next-page
的参数:1
{{ $response.body["next-page"] }}
通过页码使用 $pageCount
获取下一页#
如果您使用的 API 支持通过页码定位特定页面:
- 将 Pagination Mode 设置为 Update a Parameter in Each Request。
- 将 Type 设置为 Query。
- 输入查询参数的 Name。这取决于您的 API,通常在其文档中有描述。例如,一些 API 使用名为
page
的查询参数来设置页码,因此 Name 应为page
。 - 悬停在 Value 上并切换 Expression 为开启状态。
- 输入
{{ $pageCount + 1 }}
$pageCount
是 HTTP Request 节点已获取的页数,从零开始计数。大多数 API 的分页从 1 开始计数(第一页是第 1 页)。这意味着在 $pageCount
上加 +1
表示节点在第一次循环时获取第 1 页,第二次循环时获取第 2 页,依此类推。
通过请求体参数实现分页导航#
如果使用的 API 允许通过请求体参数进行分页:
- 将 HTTP 请求方法设置为 POST
- 将 分页模式 设置为 每次请求更新参数
- 在 类型 参数中选择 Body
- 输入请求体参数的 名称。这取决于您使用的 API,常见键名为
page
- 悬停在 值 字段上并切换 表达式 开关
- 输入
{{ $pageCount + 1 }}
在查询参数中设置每页数量#
如果使用的 API 支持通过查询参数设置每页数量:
- 在主节点参数中选择 发送查询参数(这是首次打开节点时看到的参数,而非选项内的设置)
- 输入查询参数的 名称。这取决于您的 API,例如许多 API 使用
limit
作为设置每页数量的参数,因此 名称 应填写limit
- 在 值 字段中输入您需要的每页数量