首页 文章

通过邮递员调用微软图api

提问于
浏览
3

美好的一天SO人 .

我正在尝试创建一个REST Web服务来访问MS Graph Calendar API . 在开始编码之前,我想先通过邮递员对此进行测试 . 经过一些研究后,到目前为止我已经达到了 .

  • 使用@ outlook.com作为域创建了一个Microsoft帐户,并访问了outlook实用程序 . 我去了日历显示屏并在日历上绘制了一些事件 .

  • 使用该帐户输入Azure portal并在此承租人中创建了一个Azure Active Directory和一个新用户 . 我将我的Microsoft帐户的日历共享给这个新创建的AAD用户 .

  • 使用新创建的Azure活动目录用户登录Microsoft App Registration Portal . 我使用过这个用户,因为我在博客中看到我需要在"Converged Application"下注册一个应用程序 . 当我使用我的Microsoft帐户时,应用程序注册门户中没有Converged Application部分 . 下面是一个截屏 .

  • 我添加了"Converged Application"并获得了应用程序ID和应用程序密钥等必要的详细信息 . 我选择的平台是"Web",我提供了这个重定向网址: https://www.getpostman.com/oauth2/callback . 虽然,我想我想赢得一个浏览器供我使用我的Microsoft帐户进行授权和身份验证 .

在阅读时,有许多授权类型供您授权和验证以使用MS Graph API . 一个是 Authorization Code Grant Flow ,它为您提供登录Microsoft或AAD帐户的界面 . 如上所述,我需要无缝登录,所以我尝试了 Client Credentials Grant TypeResource Owner Grant Type .

  • 在创建应用程序时,应该授予它以控制它可以访问的权限 . 我已根据我需要使用的特定MS Graph API向应用程序提供了所需的委托和应用程序权限 . 下面是一个截屏 .

  • 假设我已经完成了设置,我尝试使用以下URL获取访问令牌:

https://login.microsoftonline.com/substitute-with-tenant-directory-id/oauth2/v2.0/token

我能够使用资源所有者授权类型获取访问令牌 . 下面是截屏 .

  • 接下来,我尝试访问我需要的特定API . 这是URL:

https://graph.microsoft.com/v1.0/me/calendar/calendarView?startDateTime=2018-08-01T00:00:00.0000000&endDateTime=2018-08-31T23:59:59.0000000

我还尝试用“users / substitute-with-user-id”替换URL中的“我”部分,但不幸的是我收到了错误 . 下面是截屏 .

我被卡住,因为响应显示“未知错误” . 有人知道我在这里缺少什么吗?

2 回答

  • 0

    它是委派权限令牌,您只能获取当前登录用户's calendar event. If you want to load other user'的事件,您可以使用仅限app的令牌 . 请参阅https://developer.microsoft.com/en-us/graph/docs/concepts/auth_v2_service以了解如何获取仅限应用令牌 .

  • 0

    我最近通过邮递员按照This Blog给出的步骤调用了图谱API,我认为问题是你没有在正文中传递 Resource . 尝试在值为 https://graph.microsoft.com 的正文中传递 Resource ,希望这可以解决您的问题 .

相关问题