gpt4 book ai didi

outlook - 通过 Microsoft Graph API 访问共享/房间日历时出错

转载 作者:行者123 更新时间:2023-12-04 13:47:36 25 4
gpt4 key购买 nike

我正在制作一个需要使用非管理员帐户访问 Office 365 实例中的共享/房间资源日历的应用程序。我已经使用 V2 端点和 Auth Code Grant 注册了一个应用程序(在 Microsoft 应用程序注册门户中)。这成功地让我登录,并为我提供了一个带有 Calendars.ReadWrite.Shared 的功能 token 。范围。有了这个 token ,我可以检索我自己的日历,以及与我明确共享的日历(因此添加到我的日历列表中)。所有这些都可以通过普通的 Calendars.ReadWrite 来实现范围。

但是,在请求访问任何其他共享日历(例如房间日历)时出现错误。这是一个例子。如果我向 https://graph.microsoft.com/beta/users/my-own-email@business.com/calendars 拨打 GET 电话它成功返回了我的日历列表。如果我向 https://graph.microsoft.com/beta/users/meetingroom1.4@business.com/calendars 拨打 GET 电话我收到 404(未找到)错误。任何其他用户都会发生同样的错误,而不仅仅是 session 室。请注意,当我使用同一帐户在线登录 Office 365 时,我可以看到这些日历。

如果我要求事件而不是日历,则会出现不同的错误。如果我向 https://graph.microsoft.com/beta/users/meetingroom1.4@business.com/events 拨打 GET 电话,我收到 500(内部服务器)错误。

我已经检查了我能找到的关于该问题的所有其他线程,还有这个来自 11 月的线程 How to access shared calendars from Office REST API?说 Microsoft 端存在某种阻塞问题。它使用 Office REST API 而不是 Graph,但在后端 API 调用相同的东西。这个问题还在吗?或者,我是否缺少一些进一步的权限?我尝试在 Calendars.ReadWrite.Shared 之上添加相当多的不同权限,但他们都没有修复它。有正确的组合吗?

非常感谢您的帮助,如果任何其他信息对诊断有用,请告诉我。

最佳答案

因此,如果其他人碰巧对此感兴趣,我想出了一种无需使用 Calendars.ReadWrite.Shared 即可访问房间资源日历的方法。允许。这允许您仅使用 Calendars.ReadWrite访问房间资源的权限,方法是将它们移到您要进行身份验证的电子邮件的日历列表中。但是,它仅适用于您与之共享日历的特定帐户,因此不适用于必须适用于任何帐户的应用程序。这对我的用例来说已经足够了,但可能不适合你的用例。

首先,找到或创建一个帐户,该帐户是您要使用的房间资源日历的受托人,并且具有完全访问权限。在该帐户上,单击您的个人资料图片下方下拉列表中的“打开另一个邮箱”。

Open another mailbox location

在随后的弹出窗口中,输入您要使用的房间资源日历的电子邮件地址。

然后,在打开的新页面上(应该是房间资源日历的Office账号):

  • 导航到日历页面
  • 点击“分享”
  • 与您计划进行身份验证的帐户共享默认日历。

  • 然后登录该“身份验证”帐户,检查其电子邮件以获取共享日历的通知,然后单击“接受”。这将做的是将日历移动到经过身份验证的帐户的日历列表中,这意味着您只需拨打 https://graph.microsoft.com/v1.0/me/calendars 即可访问它。端点。遗憾的是,您必须为想要访问的每个日历重复此操作。

    关于outlook - 通过 Microsoft Graph API 访问共享/房间日历时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42761308/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com