我目前正在使用 Microsoft Graph API 将日历事件同步到我的本地应用程序。它似乎工作正常,除了我似乎无法检索已删除的事件。我正在按照增量查询 as laid out by Microsoft here 的说明进行操作.这些说明特别指出“通过使用增量查询,您可以在日历 View 中获取新的、更新的、或删除的事件”,并且在示例中,示例响应中有一个事件已删除。
然而,在我的测试中,我永远无法接收到任何已删除的事件。我创建一个事件并调用 /me/calendarView/delta?startDateTime={start_datetime}&endDateTime={end_datetime}
我可以看到该事件。然后我删除事件,进行相同的调用,响应为空。我已经尝试使用 deltaToken 调用,只是为了确保我得到的事件自上次调用以来发生了变化,并且它确实按预期返回了已删除的事件。但我不想使用它,因为它要求我的开始/结束日期始终相同。
我是否完全忽略了 delta 调用的要点,还是我在调用它时做错了什么?
最佳答案
我正在使用这里显示的服务 https://learn.microsoft.com/en-us/graph/delta-query-events
GET /me/calendarView/delta?startDateTime={start_datetime}&endDateTime={end_datetime}
并且在使用示例中所示的增量 token 运行它时,我没有收到已删除的事件
https://learn.microsoft.com/en-us/graph/delta-query-events#the-next-round-sample-first-request ...
{
"@odata.type": "#microsoft.graph.event",
"id": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQLkRkXbBznTvAADb6ytyAAA=",
"@removed": {
"reason": "deleted"
}
},
...
我总是得到一个空的增量响应 例如 https://graph.microsoft.com/v1.0/me/calendarView/delta?$deltatoken=R0usmcdvmMuZCBYV0hguCFHvWbSXF
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(event)",
"@odata.deltaLink": "https://graph.microsoft.com/v1.0/me/calendarView/delta?$deltatoken=R0usmcdvmMuZCBYV0hguCFHvWbSXF-PYk6UEH7m4ZdZmSbEIlouKElB10k31BdGZZJ1Os2i",
"value": []
}
关于microsoft-graph-api - Microsoft Outlook Calendar Graph API delta 不返回已删除的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51502976/