Slack files.list API调用出现max_page_limit警告 无法获取100页后文件
问题解答
限制说明
Slack 基于page+count的传统分页方案存在未公开的隐式限制:page参数最大仅支持到100,超过后就会触发max_page_limit警告,自动将页码重置为1返回,所以你当前的分页方式确实无法拉取全部60000个文件。
可行解决方案
方案1:改用游标分页(推荐)
Slack 官方目前优先推荐使用游标分页方案,无页码限制,可拉取全量文件:- 首次调用接口时仅传
limit=200参数,不要携带page参数,调用地址为:https://slack.com/api/files.list?limit=200 - 每次接口响应会返回
response_metadata字段,其中next_cursor不为空时,将该值作为cursor参数带入下一次调用:https://slack.com/api/files.list?limit=200&cursor=返回的next_cursor值 - 重复步骤2直到
next_cursor为空,即完成全量文件拉取。
- 首次调用接口时仅传
方案2:调整单页返回数量(临时兼容旧分页逻辑)
files.list接口的count参数最大支持设置为1000,你可以将单页数量调整为1000,60000个文件总页数仅为60,不会触发100页的上限,直接使用原有page递增的逻辑即可拉取全量数据,调用地址为:https://slack.com/api/files.list?count=1000&page={{pageNumber}}
注意事项
调用过程中需注意遵守Slack接口的频率限制,触发429错误时需按响应头retry-after指定的等待时长重试,避免被限流封禁。
内容的提问来源于stack exchange,提问作者Vivek Baranwal
相关产品推荐
相关产品推荐

