使用Azure AD v2身份验证成功使用图形端点。一切都很完美。
Graph端点不支持outlook任务,因此需要使用outlook api端点outlook.office.com/api。
使用scope参数在身份验证中建立范围。使用相同的代码,只是不同的端点,例如
https://graph.microsoft.com/beta/me/messages - 有效 https://outlook.office.com/api/beta/me/messages - 401未经授权
我错过了什么? outlook.office.com需要什么不同于图终端才能工作?
答案 0 :(得分:2)
Outlook和MS Graph是相关但不同的服务。您无法在两种服务之间互换令牌。您应该为每个服务获得不同的令牌,并为每个服务设置适当的范围。
答案 1 :(得分:1)
已解决此问题并在此处发布,以供其他人查找。
图表接受不合格的范围,例如Mail.Read Mail.Send但这些不适用于outlook.office.com/api,它要求使用端点限定范围,即https://outlook.office.com/mail.read
合格的范围使得令牌在端点之间无法互操作,即请求的范围是图或 outlook.office.com