Skip to content

HTTP Request 节点中的分页功能#

HTTP Request 节点支持分页功能。本页提供了一些配置示例,包括使用 HTTP 节点变量

更多关于该节点的信息,请参考 HTTP Request

/// 注意 | API 差异 不同的 API 以不同方式实现分页功能。请查阅您所用 API 的文档以获取详细信息。您需要了解以下内容:

  • API 是否提供下一页的 URL?
  • 是否存在 API 特定的页面大小或页码限制?
  • API 返回数据的结构。 ///

启用分页功能#

在 HTTP Request 节点中,选择 Add Option > Pagination

使用响应中的 URL 通过 $response 获取下一页#

如果 API 在响应中返回下一页的 URL:

  1. Pagination Mode 设置为 Response Contains Next URL。n8n 会显示该选项的参数。
  2. Next URL 中,使用表达式设置 URL。具体表达式取决于 API 返回的数据。例如,如果 API 在响应体中包含一个名为 next-page 的参数:
    1
    {{ $response.body["next-page"] }}
    

通过页码使用 $pageCount 获取下一页#

如果您使用的 API 支持通过页码定位特定页面:

  1. Pagination Mode 设置为 Update a Parameter in Each Request
  2. Type 设置为 Query
  3. 输入查询参数的 Name。这取决于您的 API,通常在其文档中有描述。例如,一些 API 使用名为 page 的查询参数来设置页码,因此 Name 应为 page
  4. 悬停在 Value 上并切换 Expression 为开启状态。
  5. 输入 {{ $pageCount + 1 }}

$pageCount 是 HTTP Request 节点已获取的页数,从零开始计数。大多数 API 的分页从 1 开始计数(第一页是第 1 页)。这意味着在 $pageCount 上加 +1 表示节点在第一次循环时获取第 1 页,第二次循环时获取第 2 页,依此类推。

通过请求体参数实现分页导航#

如果使用的 API 允许通过请求体参数进行分页:

  1. 将 HTTP 请求方法设置为 POST
  2. 分页模式 设置为 每次请求更新参数
  3. 类型 参数中选择 Body
  4. 输入请求体参数的 名称。这取决于您使用的 API,常见键名为 page
  5. 悬停在 字段上并切换 表达式 开关
  6. 输入 {{ $pageCount + 1 }}

在查询参数中设置每页数量#

如果使用的 API 支持通过查询参数设置每页数量:

  1. 在主节点参数中选择 发送查询参数(这是首次打开节点时看到的参数,而非选项内的设置)
  2. 输入查询参数的 名称。这取决于您的 API,例如许多 API 使用 limit 作为设置每页数量的参数,因此 名称 应填写 limit
  3. 字段中输入您需要的每页数量