用 API 读语雀账号信息,返回 429:Too Many Requests。
以前遇到限流,我的第一反应是重试,换个间隔再试,总觉得多试几次总能挤过去。但手册里为这个场景写过一整段协议:停止当前批次,记录时间,等限流窗口结束,下一批只拉游标之后的增量,并发固定为 1,空响应不算采集完成。
照做以后发现,停下来并没有耽误什么。这轮要的选题线索,八月的脱敏索引里已经有了一份;429 等于服务端在说"现在不行",把它当成一次正常的回答,比把它当成要战胜的故障更省事。
限流、过期、空结果,这些都不是异常,是接口在描述自己的边界。写进协议里的那条"空响应不能记为采集完成",反过来也在提醒我:没有拿到数据的时候,诚实地说没拿到,比编一个"应该差不多"更有用。