反馈已提交

网络繁忙

API输入-分页取数

  • 文档创建者:Roxy
  • 历史版本:10
  • 最近更新:Wendy123456 于 2026-02-28
  • 1. 概述

    1.1 版本

    FineDataLink 版本
    功能变动
    4.1.3-

    1.2 应用场景

    需要使用 FineDataLink 取出 API 数据时,由于数据量限制或者接口响应时间,有时需要分页取数。

    1.3 功能简介

    位置
    功能说明
    参数赋值节点、数据同步节点取出 API 数据时

    「高级配置设置项中,可开启「分页取数按钮,对源端 API 数据进行分页取数,分页方式支持:页码、偏移量、游标

    1772247096302353.png

    API 输入算子中

    1.4 使用限制

    当前只支持返回值为 json 的 API。

    3. 分页方式说明

    3.1 分页方式为页码

    3.1.1 取数逻辑

    FineDataLink 提供 pageNum 这个参数进行分页取数,代表页数,可自定义该参数的初始值,增长间隔为1(不可自定义)。

    比如取数时,设置从第一页开始取数,下次从第二页开始取数,以此类推,分页取数的次数限制为 10000 次。

    用户还需根据实际情况设置循环结束条件。

    示例说明(帮助理解功能):

    比如有个 API 接口,存在大量数据,需要进行分页取数:

    1772248141486478.png

    要素
    说明
    接口基本情况

    1)取数时需要填入 pageNum(页数)和pageSize(单页大小)这两个参

    2)接口调用成功后,会返回 totalNum(总数据条数)

    分页方式
    因为有 pageNum(页数)和pageSize(单页大小)这两个参数,我们可考虑根据页码进行分页
    结束条件

    由于有 totalNum ,可通过 totalNum/pageSize 计算总页数,当取数次数>=总页数时,终止循环 

    具体设置
    9.png

    icon提示:

    具体示例可参考:分页取数-按页数取数

    3.1.2 功能说明

    1772248938673368.png

    设置项
    说明
    取数限制

    限制分页取数的次数。

    • 默认为128

    • 不能为空,限制最大值为 10000

    • 当达到循环上限时,还未满足分页结束条件,也结束分页取数,并报错

    参数

    pageNum,代表页数 

    • 同名优先级最高。

    • 单次调取 API 结束后,可自增

    • 用户可在 Query 参数和 Body 内的各种格式下使用,与常规的参数用法无差异

    更新策略
    • 初始值:用户可配置初始值,默认为1,不能为空

    • 增长间隔:用户不能修改增长间隔,默认为1,不能为空

    用户配置起始值和增长间隔后,每次循环后执行自增动作,自增逻辑为:pageNum=pageNum+增长间隔

    分页结束条件

    根据接口实际情况设置结束条件:

    1772249099886256.png

    参数
    说明
    http status

    说明:

    本次循环的 API 返回 http status(即 HTTP 状态码,用于表示请求的处理结果

    实际使用参考:

    • 比如值>=500,代表服务器错误,终止取数,延后重试

    • 比如值=400,请求错误,终止取数

    JSONPath

    说明:

    本次循环的 API 返回 body 作为基础,在这个基础上通过写 JSONPath 获取信息(仅支持返回单个值,如果返回是数组或者 JSON 对象,也格式化为字符串);当响应体的 jsonPath 没有时,则取空

    实际使用参考:

    1)当 API 返回的 JSON 数据结构中包含数据数组时,可以使用 JSONPath 检查数组长度是否为 0 作为结束条件

    2)某些 API 会在最后一页返回特殊标记,可根据特殊标记的值判断是否取数完毕

    requestTimes

    说明:

     分页取数的循环次数,如果在循环容器中的 API 输入算子,该取数次数与循环容器每次循环分开计数 

    pageNum页码参数 $pageNum

    注:值可以引用参数。

    3.2 分页方式为偏移量

    3.2.1 取数逻辑

     在API 分页取数时,‌偏移量(offset)‌ 是指从结果集的开头开始‌跳过‌的记录数量,它决定了当前请求从哪一条数据开始返回。

    简单来说,偏移量就是“跳过前面多少条数据,从第几条开始拿”。

    核心概念:
    • ‌偏移量(offset)‌:指定查询结果的起始位置,即跳过多少条记录后开始返回数据。‌索引从 0 开始‌,所以 offset=0 表示从第 1 条数据开始,offset=10 表示跳过前 10 条,从第 11 条开始取数。

    • ‌限制条数(limit)‌:指定每次请求最多返回多少条数据。

    示例:

    比如有个 API 接口,存在大量数据,需要进行分页取数:

    1772261772408123.png

    要素
    说明
    接口基本情况调用接口时,需要需要填写偏移量限制条数参数
    分页方式可考虑用偏移量的分页方式
    结束条件比如一共有 10 条数据,从第一条数据开始取数(startrow),每次最多取 3 条,那么需要取 4 次,最后一次的数据条数为 2 条,那么循环结束条件就是:最后一次的数据条数<limit参数的

    如果每次取两条,那么取 5 次取完,那么循环结束条件可设置为最后一次取数条数>0

    可以用其他标准设置结束条件,根据实际情况设置

    点击展开更多
    11.png


    icon提示:
    具体示例可参考:分页取数-按偏移量取数

    3.2.2 功能说明

    1772262771805773.png

    设置项
    说明
    取数限制

    限制分页取数的次数。

    • 默认为128

    • 不能为空,限制最大值为 10000

    • 当达到循环上限时,还未满足分页结束条件,也结束分页取数,并报错

    参数

    offset参数,代表偏移量

    • 同名优先级最高

    • 在单次调取API结束后,再自增

    • 用户可在Query参数和Body内的各种格式下使用,与常规的参数用法无差异

    更新策略
    • 初始值:用户可配置初始值,默认为1,不能为空

    • 增长间隔:用户用可配置增长间隔,默认为20,不能为空

    用户配置起始值和增长间隔后,每次循环后执行自增动作,自增逻辑为:offset=offset+增长间隔

    分页结束条件

    http status、JSONPath、requestTimes说明请参见本文 3.1.2 节内容

    • offset:偏移量参数$offset

    • 注:值可以引用参数

    13.png

    3.3 分页方式为游标

    3.3.1 取数逻辑

    游标分页逻辑:类似于书签,记录当前位置(游标),从这个位置开始取下一次的数据。

    示例:

    比如有个 API 接口:

    1772263635817822.png

    要素
    说明
    接口基本情况

    1)取数时需要传入 cursor 参数,代表从哪个位置开始取数

    最开始传0,后续传返回参数中的next_cursor值

    2)调用接口后,返回参数:

    • has_more ,若没有数据,值为 fslse

    • next_cursor:下一次分页的游标

    游标取数逻辑

    根据接口基本情况,可看出

    1)分页结束条件:has_more 为 false,代表数据已经取完,应该结束分页

    16.png

    2)取数时具体设置:

    15.png

    icon提示:
    具体示例可参考:分页取数-分页方式为游标

    3.3.2 功能说明

    1772264266463657.png

    设置项
    说明
    取数限制限制分页取数的次数。
    • 默认为128

    • 不能为空,限制最大值为 10000

    • 当达到循环上限时,还未满足分页结束条件,也结束分页取数,并报错

    参数

    cursor 参数

    • 同名优先级最高

    • 用于链式循环场景,每次循环后执行继承更新动作

    • 用户可在Query参数和Body内的各种格式下使用,与常规的参数用法无差异

    更新策略

    1)默认值:默认为空,用户可输入、允许为空、支持参数引用,

    2)游标参数更新:

    • 当响应体的jsonPath没有时,则取空

    • 用户可以使用本次循环的API返回的body作为基础,在这个基础上通过写JSONPath作为更新后的值(仅支持返回单个值,如果返回是数组或者JSON对象,也格式化为字符串)

    注:先判断分页结束条件,再执行游标参数更新。

    分页结束条件

    18.png

    http status、JSONPath、requestTimes说明请参见本文 3.1.2 节内容

    • cursor:游标参数$cursor

    • 值可以引用参数

    4. 通用说明

    勾选了分页取数后, API 数据源其他功能说明:

    功能说明
    重试若 API 输入分页取数单次执行调用API失败,没有重试逻辑,按整个数据转换节点重试
    调用频率控制在一个任务实例中,分页取数多次调用API受「调用频率控制」控制
    • json路径

    • 将解析后的json数据展开为二维表

    • 如果API节点只配置了分页取数,将每次取数获得的json拼成一个一列N行的二维表(该二维表只有一列 responseBody

    • 如果API节点本身配置了分页取数&Json路径,将每次取数获得相应路径下的json,拼成一个一列N行的二维表(该二维表只有一列responseBody)

    因为每次分页取数时获得 json 可能不一样,如果找不到相应json路径,则为空

    • 如果 API 节点本身配置了分页取数&Json 路径为「$.data」&勾选「将解析后的JSON数据展开为二维表」,将每次取数获得相应路径下 json 进行拆列,拼成一个N列N行的二维表

    因为每次分页取数时获得 json 可能不一样,每次将json展开二维表时,如果遇到新的属性,则新增列

    没有相关属性的分页取数,相关列为空

    返回值格式当响应体格式为 xml 时,不支持分页取数

    信息类型(参数赋值)

    • 响应体

    • 响应头

    • 状态码

    如果参数赋值同时解析响应体、响应头、状态码,将每次取数获得响应拼成一个N列N行的二维表




    附件列表


    主题: 数据开发-定时任务
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持