如何将REST API返回的总行数配置为ADF分页规则的结束条件?
在Copy Data活动中配置基于REST API返回total值的Offset分页终止条件
以下是具体实现步骤:
先确保REST API URL补充分页条数参数:若还未指定每页返回条数,需添加
limit(或API要求的参数名如pageSize),最终URL格式应为:https://heineken-dev.collibra.com/rest/2.0/assets?offset={offset}&limit=100(100为每页条数,需根据API实际支持值调整)。打开Copy Data活动的「源」选项卡,找到「分页规则」区域,点击「添加分页规则」:
- 分页类型选择Offset,参数名填写
offset(与URL中的{offset}占位符完全匹配)。 - 设置「起始值」为
0(多数API的offset起始值为0,若你的API从1开始则改为1),「增量值」填写你设置的每页条数(比如上面的100)。 - 终止条件选择自定义表达式,输入以下动态表达式:
逻辑说明:当当前offset值大于等于API返回的总行数@greaterOrEquals(int('{offset}'), int(activity('Copy Data').output.response.total))total时,自动停止分页请求。
- 分页类型选择Offset,参数名填写
保存配置后运行活动,系统会根据返回的
total值自动计算需请求的页数,直到offset达到total值时终止。
注意事项:
- 确认REST API响应为JSON格式,且
total字段位于响应体顶层;若total在嵌套结构(如response.meta.total),需调整表达式路径为@greaterOrEquals(int('{offset}'), int(activity('Copy Data').output.response.meta.total))。 - 若API返回的
total是字符串类型,表达式中的int()转换不可省略,确保数值比较正常。
内容的提问来源于stack exchange,提问作者Sukanya
相关产品推荐
相关产品推荐

