microsoft-graph-api - Microsoft Graph API - 日历事件更改跟踪问题
问题描述
我正在尝试创建一个开始/结束日期比当前时间更早的事件。下面是请求,
POST https://graph.microsoft.com/v1.0/me/events/
Body:
{
"subject": "Test Old Event",
"start": {
"dateTime": "2019-12-20T12:00:00",
"timeZone": "UTC"
},
"end": {
"dateTime": "2019-12-20T14:00:00",
"timeZone": "UTC"
}
}
得到了与以下相同的响应,
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('f7edf005-0451-49de-bae1-a1794b528434')/events/$entity",
"@odata.etag": "W/\"3zxKTWNb1k2PdgXN3kcaBAAAndJKqg==\"",
"id": "AAMkAGEwOTJkZjE2LWRhYTYtNDdmMS04NTcxLTIxOThlZDBhMjhlOABGAAAAAACQXz1o19PeQKBkV5TRqGKvBwDfPEpNY1vWTY92Bc3eRxoEAAAAAAENAADfPEpNY1vWTY92Bc3eRxoEAACd2xkjAAA=",
"createdDateTime": "2019-12-22T17:14:28.5309555Z",
"lastModifiedDateTime": "2019-12-22T17:14:28.7428321Z",
"changeKey": "3zxKTWNb1k2PdgXN3kcaBAAAndJKqg==",
"categories": [],
"originalStartTimeZone": "UTC",
"originalEndTimeZone": "UTC",
"iCalUId": "040000008200E00074C5B7101A82E00800000000902B9E44EBB8D50100000000000000001000000012260EC65CA7EF479B8B92A81A06129F",
"reminderMinutesBeforeStart": 15,
"isReminderOn": true,
"hasAttachments": false,
"subject": "Test Old Event",
"bodyPreview": "",
"importance": "normal",
"sensitivity": "normal",
"isAllDay": false,
"isCancelled": false,
"isOrganizer": true,
"responseRequested": true,
"seriesMasterId": null,
"showAs": "busy",
"type": "singleInstance",
"webLink": "https://outlook.office365.com/owa/?itemid=AAMkAGEwOTJkZjE2LWRhYTYtNDdmMS04NTcxLTIxOThlZDBhMjhlOABGAAAAAACQXz1o19PeQKBkV5TRqGKvBwDfPEpNY1vWTY92Bc3eRxoEAAAAAAENAADfPEpNY1vWTY92Bc3eRxoEAACd2xkjAAA%3D&exvsurl=1&path=/calendar/item",
"onlineMeetingUrl": null,
"recurrence": null,
"responseStatus": {
"response": "organizer",
"time": "0001-01-01T00:00:00Z"
},
"body": {
"contentType": "text",
"content": ""
},
"start": {
"dateTime": "2019-12-20T12:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2019-12-20T14:00:00.0000000",
"timeZone": "UTC"
},
"location": {
"displayName": "",
"locationType": "default",
"uniqueIdType": "unknown",
"address": {},
"coordinates": {}
},
"locations": [],
"attendees": [],
"organizer": {
"emailAddress": {
"name": "NAME",
"address": "EMAIL"
}
}
}
我创建了图表订阅以获取有关我的日历事件的任何更改的通知,如下所示。
POST https://graph.microsoft.com/v1.0/subscriptions
Content-type: application/json
{
"changeType": "updated,created,deleted",
"notificationUrl": "<MY_WEBHOOK>",
"resource": "me/events",
"clientState": "<state>"
}
对于我所做的上述创建事件,我通过 webhook 收到了一些更改的通知。
我使用增量查询查询了日历事件的更改。
GET https://graph.microsoft.com/v1.0/me/calendarview/delta?$deltatoken=<DELTA_TOKEN_URL>
下面是我从图表中得到的响应,关于我通过 delta 查询 API 在上面创建的事件。
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(event)",
"@odata.deltaLink": "https://graph.microsoft.com/v1.0/me/calendarview/delta?$deltatoken=<DELTA_TOKEN_URL>",
"value": [
{
"@odata.type": "#microsoft.graph.event",
"id": "AAMkAGEwOTJkZjE2LWRhYTYtNDdmMS04NTcxLTIxOThlZDBhMjhlOABGAAAAAACQXz1o19PeQKBkV5TRqGKvBwDfPEpNY1vWTY92Bc3eRxoEAAAAAAENAADfPEpNY1vWTY92Bc3eRxoEAACd2xkjAAA=",
"@removed": {
"reason": "deleted"
}
}
]
}
正如您在上面的响应中看到的,我刚刚创建的事件被返回为@removed
即删除,这是不正确的。
这只会发生在我为较早时间创建的事件上。
希望您尽快解决此问题。
谢谢
解决方案
推荐阅读
- python - 从 Jupyter 实验室运行 Flask
- jenkins - 找不到 WAR(詹金斯)
- unity3d - Unity,如何使用 AsEnumerable
- apache - 同一个 httpd.conf 中的多个域
- c - Node-ffi 调用 c DLL 返回一个指针
- javascript - 如何替换超类的javascript方法进行测试?
- python - 'image' 属性没有与之关联的文件
- python - virtualenv 没有从 /usr/bin 自动选择 python3
- c - 如果按顺序声明可分割变量,它们的地址是否会递增
- ios - 如何以编程方式在 UIPageViewController 中放置自动布局约束?