Office 365 Graph API 还是 Outlook API?

Office 365 Graph API or Outlook API?

当使用 Office 365 APIs 仅访问电子邮件项目时,我应该使用 Graph API 还是 Outlook API?我不需要 Graph API 提供的所有不同服务,但 Outlook API 似乎功能更全。哪个更适合未来?

这取决于您的代码所在的上下文 运行。 如果您的代码在邮件加载项的上下文中执行并且不需要访问任何其他图形资源,那么只有 Outlook APIs 应该是一个不错的选择,它们也不需要任何进一步的身份验证或同意步骤。

如果您可能想从访问邮件的代码中访问 OD4B 或 O365 组,那么使用图表 API 是有意义的。

虽然在这方面有几件事需要注意。

  1. 电子邮件在 Outlook API 上的 ID 与图表上的不完全相同。 https://blog.mastykarz.nl/office-365-unified-api-mail/
  2. 在使用图表时,如果您想扩展 AAD 应用程序上同意的权限,您必须跳过代码中的一些环节才能触发 v1 AAD 应用程序模型下的重新同意

最后,新的 API 可能会首先出现在 Outlook(或其他产品)特定的 API 中,然后移植到图表中 API

如果 Graph API 具有您需要的功能,我实际上会建议使用它,因为事实上您现在不需要 Outlook 之外的任何东西,您可能在不久的将来会看到不同的东西Office 365 功能之间的集成度越来越高。除此之外,我个人认为它有更好的文档记录并且总体上更易于使用。作为一个额外的好处,如果你曾经开发过另一个 O365 相关的集成,你已经知道它是如何工作的,因为 Microsoft Graph 中的所有服务都或多或少地使用相同的结构。

如果您寻求最广泛支持的解决方案,请尝试 EWS API,因为大多数 Exchange 服务器(甚至不在 O365 中的服务器)都会启用它,并且 Outlook 也会为您提供令牌和详细信息.然而,这不是最有前途的证据。