Microsoft Graph API subscriptions端点@odata.nextLink返回404问题咨询
这是微软Graph API /subscriptions 端点近期的已知服务侧问题,和你的调用流程、SDK使用逻辑无关。
问题根因
服务侧生成分页skipToken时逻辑异常,最后一页数据返回后依然携带了无效的@odata.nextLink,请求该无效链接就会返回404的静态错误页面,不存在数据遗漏的情况。
临时规避方案
- 调用
https://graph.microsoft.com/v1.0/subscriptions时主动添加$top=999查询参数,绝大多数场景下可以一次性拉取全量订阅数据,完全规避分页流程。 - 如果你的订阅数量确实超过单页阈值必须分页,遇到nextLink返回404时直接终止分页循环即可,此时已经获取到全量数据,无需额外处理。
- 针对Java SDK的影响:SDK内置的分页迭代器会自动请求所有返回的nextLink,你可以自行封装迭代逻辑,捕获请求404异常后直接终止迭代,不需要调整其他业务代码。
目前该问题已经被微软Graph团队确认,后续服务侧修复后会自动恢复正常分页逻辑,不需要你做额外的适配。
内容的提问来源于stack exchange,提问作者Gareth Smith
相关产品推荐
相关产品推荐

