我正在尝试查询Graph API以获取有关用户日历的信息。我现在能够查询/我没有问题:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
"id": "---",
"businessPhones": [
"123456789"
],
"displayName": "john smith",
"givenName": "john",
"jobTitle": null,
"mail": null,
"mobilePhone": "+123456789",
"officeLocation": null,
"preferredLanguage": "en-US",
"surname": "",
"userPrincipalName": "person@org.onmicrosoft.com"
}
但是,查询任何资源(即:https://graph.microsoft.com/v1.0/me/calendars
)会出现错误:
{
"error": {
"code": "AuthenticatonError",
"message": "Error authenticating with resource",
"innerError": {
"request-id": "de91f00f-fd39-44cc-8856-757dc4a5ee24",
"date": "2016-07-22T14:11:04"
}
}
}
我一直在谷歌搜索任何其他似乎没有这个问题。我的应用已正确注册并启用了所有权限。我通过Angular用ADAL调用API。该应用获取令牌并进行身份验证,没有任何问题(userInfo中为isAuthenticated: true
)是否有其他人遇到此问题?
答案 0 :(得分:0)
通过放弃图形api并查询https://outlook.office365.com/api/v1.0/me/calendars来结束解决此问题。 https://msdn.microsoft.com/en-us/office/office365/api/calendar-rest-operations?f=255&MSPPError=-2147217396#GetCalendarView处的文档似乎有不正确的api端点。
我们的应用程序版本的Angular是1.2,adal.js的版本是1.0.7。 我没有使用Azure AD,而是使用了注册@ dev.outlook。