有没有人有幸运行创建webhook以接收有关O365日历事件更改的通知?我已成功使用Outlook Notifications REST API,但尝试使用新的Microsoft Graph API一直是一个颠簸的过程。
我已经为https://graph.microsoft.com获得了一个仅限app的令牌,我通常可以同时使用v1.0和beta端点服务。但是,当我尝试创建新订阅(POST https://graph.microsoft.com/beta/subscriptions)时,我得到了相当模糊的错误:
401 Unauthorized: {
"error": {
"code": "",
"message": "Invalid security token.",
"innerError": {
"request-id": "c5a64878-e643-41be-b863-a598e05f38a4",
"date": "2015-11-28T17:59:24"
}
}
}
我已经为我的应用程序提供了以下应用程序权限: Microsoft Graph - 读取所有用户的完整配置文件,读取目录数据和读取所有邮箱中的日历。根据文档 Calendars.Read 是必需的。
我想知道我做错了什么,或者可能是创建订阅服务无法正确处理仅限app的令牌?
编辑:
解码后的令牌是:
{
typ: "JWT",
alg: "RS256",
x5t: "MnC_VZcATfM5pOYiJHMba9goEKY",
kid: "MnC_VZcATfM5pOYiJHMba9goEKY"
}.
{
aud: "https://graph.microsoft.com/",
iss: "https://sts.windows.net/58108de9-edf3-####-b20b-817520334d13/",
iat: 1448814967,
nbf: 1448814967,
exp: 1448818867,
appid: "5e80f22f-ff14-####-962a-2a9362a6057c",
appidacr: "2",
idp: "https://sts.windows.net/58108de9-edf3-####-b20b-817520334d13/",
oid: "87b9064d-3dc7-####-9071-7a61b5b57840",
roles: [
"Calendars.Read",
"Directory.Read.All",
"User.Read.All"
],
sub: "87b9064d-3dc7-####-9071-7a61b5b57840",
tid: "58108de9-edf3-####-b20b-817520334d13",
ver: "1.0"
}.
答案 0 :(得分:2)
订阅目前基于每个用户,因此无法使用仅限app的令牌创建订阅。感谢您提供反馈,我们将考虑添加对此方案的支持。