我正在使用 Microsoft Graph API 我正在为组使用 Delta API。我为每个组创建一个增量请求(我没有跟踪所有组,只跟踪特定组)。
我已经检查了这个问题并阅读了提到的文档。我已经在这里阅读了 GitHub 上的问题
我正在与同一个租户工作,同时使用 delta 响应开发了几周。除了一次,它总是几乎按预期工作。当我提出 delta 请求时,我得到了 nextLink,我跟着它直到我得到了 deltaLink。我说它几乎可以按预期工作,因为很多时候,在第一次/两次数据响应之后,我大部分时间都得到了另外 1-3 个没有额外数据的下一个链接。
我上次尝试时,在函数超时之前,我收到了大约 150 个 nextLinks 响应,除了前几个响应之外,所有这些响应都没有数据。
这是一个测试环境,组中有大约 30 个用户。
我用过
https://graph.microsoft.com/v1.0/groups/delta?$select=id,displayName,members&$filter=id eq 'groupId'`
在无限循环中,这些是我得到的响应
{
"id":"402-xxx-ee0",
"status":200,
"headers":{
"Preference-Applied":"odata.track-changes",
"Cache-Control":"no-cache",
"OData-Version":"4.0",
"Content-Type":"application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8"
},
"body":{
"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#groups",
"@odata.nextLink":"https://graph.microsoft.com/v1.0/groups/delta?$skiptoken=5ZZ_<long_token>_OXWrtiE",
"value":[
]
}
}
如您所见,它们的值中没有数据,但我仍然得到 nextLink 当我关注下一个链接时,我得到了
{
"id":"402-xxx-ee0",
"status":200,
"headers":{
"Preference-Applied":"odata.track-changes",
"Cache-Control":"no-cache",
"OData-Version":"4.0",
"Content-Type":"application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8"
},
"body":{
"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#groups",
"@odata.nextLink":"https://graph.microsoft.com/v1.0/groups/delta?$skiptoken=5ZZ_<long_token>_DNF5rRE0",
"value":[
]
}
}
如您所见,另一个响应带有另一个下一个链接(另一个链接),它再次返回空值。
这种情况再次发生,直到我的功能超时。
我希望在没有更多数据的第一个响应之前获得 deltaLink,或者在第一个空响应时获得最大值。