【发布时间】:2018-08-10 09:57:28
【问题描述】:
到目前为止,从用户那里加载共享日历是可行的。 但是,一旦您要加载事件,我们就会收到以下错误消息:
ErrorAccessDenied
Access is denied. Check credentials and try again.
网址如下所示:
https://outlook.office.com/api/v2.0/users/{userName}/calendars/{sharedCalendarId}/calendarView
查询:
{
"query": {
"$select": "Subject,Location,Start,End,IsAllDay,BodyPreview,Extensions",
"$expand": "Extensions($filter=Id eq \"Microsoft.OutlookServices.OpenTypeExtension.custom.string.here\")",
"startDateTime": "2018-07-09T22:00:00.000Z",
"endDateTime": "2018-11-09T23:00:00.000Z"
},
"headers": {
"Prefer": [
"odata.track-changes",
"odata.maxpagesize=200"
]
}
}
设置了以下范围:
"openid",
"profiles",
"offline_access", // for refresh token
"https://outlook.office.com/calendars.readwrite",
"https://outlook.office.com/calendars.read.shared",
"https://outlook.office.com/calendars.readwrite.shared"
【问题讨论】:
-
您是否尝试为 calendarView 指定时间范围?
-
是的,startDateTime 和 endDateTime 也设置了。注意:到目前为止 /me/ 工作正常,但 /users/{userId} 不行。我已经在问题中添加了查询。
-
微软将不支持这种 Outlook REST 方式,现在应该使用 Graph API 来创建新的应用程序
标签: microsoft-graph-api office365api outlook-restapi