使用 OAuth2.0 在 UWP 中访问组织内的多个 Office 365 Outlook 日历?

Access multiple Office 365 Outlook calendars within organization in UWP using OAuth2.0?

我的组织目前使用 Office365,我正在创建一个通用 Windows 平台应用程序,它基本上需要访问组织内多个帐户的日历。我目前正在使用 Office365 Rest API,在为特定用户获取 OAuth2.0 访问令牌后,我已经可以成功查询单个帐户的日历数据。

在搜索多个资源和现有的 Whosebug 问题后,我尝试了以下方法,但没有成功地获得多个用户帐户日历,而无需单独登录每个帐户:

我还通过使用 EWS Managed API 找到了一个可能的解决方案,但我不确定它是否与 UWP 和我们当前的 Office 365 设置兼容。

最后,我调查了 building daemon or service apps,但这种方法似乎真的没有必要,而且对于 Azure 的当前配置来说可能是不可能的。它需要非对称密钥加密。在系统中设置,并在 Azure 中将应用程序作为一个整体重新配置。

感谢任何帮助。

[编辑]:仅供参考,所有日历都已制作public,可以在 Outlook 的 Web 客户端中查看。

我发现我认为是当今版本的 UWP 和 Office365 REST 的唯一解决方案 Api。

首先,我启动了一个与 EWS Managed API 兼容的不同应用程序,并查询了我的组织正在使用的 Microsoft Exchange 服务器。我使用 http 调试器 Fiddler 跟踪了这个请求,以查看实际的请求和响应。这样,我就可以找到我的交换服务器的确切端点。

然后,我在浏览器中导航到交换服务的 URL,保存该服务的 WSDL 文件,并将其作为 service reference 导入我的 UWP 解决方案。

最后,我设置了一个 Httpclient,并生成了一个请求,以匹配我在 Fiddler 中跟踪的成功的 EWS Managed API 调用发出的请求的所有属性。