Microsoft graph api 获取增量时收到404
从上周末开始,我开始在请求驱动器更改列表时收到Microsoft graph api 获取增量时收到404,microsoft-graph-api,onedrive,sharepoint-api,Microsoft Graph Api,Onedrive,Sharepoint Api,从上周末开始,我开始在请求驱动器更改列表时收到HTTP404响应 首先,我要确保驱动器存在: 获取: 答复: { “id”:“01JGC6XP56Y2GOVW7725BZO354PWELRRZ”, “lastModifiedDateTime”:“2017-08-05T22:16:24Z”, “名称”:“根”, “家长参考”:{ “驱动器ID”:“b!n5c5t3PkRUiChm70bDc96e2yqnYltoJLq6IT5lxQYDZqi7UosRqoRa_3kgIU8qaV”, “驱动类型”:
HTTP404
响应
首先,我要确保驱动器存在:
获取:
答复:
{
“id”:“01JGC6XP56Y2GOVW7725BZO354PWELRRZ”,
“lastModifiedDateTime”:“2017-08-05T22:16:24Z”,
“名称”:“根”,
“家长参考”:{
“驱动器ID”:“b!n5c5t3PkRUiChm70bDc96e2yqnYltoJLq6IT5lxQYDZqi7UosRqoRa_3kgIU8qaV”,
“驱动类型”:“文档库”
},
“文件夹”:{
“儿童计数”:5
},
“根”:{},
“大小”:0
}
既然存在,我想我应该能够为它获取一个变更列表。我尝试使用驱动器api获取这个驱动器的变更列表
获取:
答复:
SPRequestGuid→b972249e-e00a-4000-8ed0-963ef7dba0e6
{
“错误”:{
“代码”:“itemNotFound”,
“消息”:“找不到资源。”
}
}
没有发现任何东西,这让我感觉不对。检查它看起来格式已更改
使用最新的OneDrive文档(delta
而不是view.delta
)
获取:
https://SOMEURL/sites/ASITENAME/_api/v2.0/drives/{id}/root/delta?token=3;%234;%231;3;28b58b6a-1ab1-45a8-aff7-920214f2a695;636434930370000000;67434848;%23;%23;%230
答复:
SPRequestGuid→cf72249e-c0f7-4000-8ed0-97bf0cfaa584
{
“错误”:{
“代码”:“itemNotFound”,
“消息”:“找不到资源。”
}
}
使用/delta
和令牌=最新的
获取:
答复:
SPRequestGuid→eb72249e-e08d-4000-8ed0-94ad25d9e424
{
“@odata.context”:”https://SOMEURL/sites/ASITENAME/_api/v2.0/$metadata#项目“,
“@odata.deltaLink”:”https://SOMEURL/sites/ASITENAME/_api/v2.0/drives/{id}/root/view.delta(token='3;%234;%231;3;28b58b6a-1ab1-45a8-aff7-920214f2a695;636440196145030000;67696039;%23;%23;%230'),
“@delta.token”:“3;%234;%231;3;28b58b6a-1ab1-45a8-aff7-920214f2a695;636440196145030000;67696039;%23;%23;%230”,
“价值”:[]
}
让我们试试Microsoft Graph API,看看是否有任何区别:
使用Microsoft Graph API:
获取:https://graph.microsoft.com/v1.0/drives/{id}/root/delta
答复:
客户端请求id→34978ae4-57cf-44c2-b5aa-05b8271ab070
请求id→34978ae4-57cf-44c2-b5aa-05b8271ab070
x-ms-ags-diagnostic→{“ServerInfo”:{“数据中心”:“美国东部”、“切片”:“切片”、“ScaleUnit”:“003”、“主机”:“AGSFE_IN_1”、“ADSiteName”:“EST”}
{
“错误”:{
“代码”:“itemNotFound”,
“消息”:“找不到资源。”,
“内部错误”:{
“请求id”:“dc105a6d-8f37-4865-bede-cbd875729af7”,
“日期”:“2017-10-19T14:26:47”
}
}
}
我发现这似乎与我所经历的非常相似
我的问题是:
/view.delta
现在是否被视为已弃用
如果我可以检索驱动器,在一种情况下,我应该在请求增量时获得404
为什么使用?token=latest
返回数据,但如果没有它,则返回404
您需要在端点前面加上OneDrive.
名称空间(有关详细信息,请阅读)
因此,对于端点,而不是调用:
/_api/v2.0/drives/{id}/root/delta
试着打电话
/_api/v2.0/drives/{id}/root/oneDrive.delta
然而,对于Microsoft Graph示例,我有点困惑。调用的语法(/v1.0/drives/{id}/root/delta
)是正确的 对于具有必需列或具有验证公式的列的文档库,这无疑是一种行为回归。我们正在进行修复,并将尽快将其部署。此问题现在应该得到解决-对于由此带来的不便,我们深表歉意。
https://SOMEURL/sites/ASITENAME/_api/v2.0/drives/{id}/root/delta?token=latest
/_api/v2.0/drives/{id}/root/delta
/_api/v2.0/drives/{id}/root/oneDrive.delta