我需要从 SharePoint Online 页面调用 GRAPH API。有人可以分享一个 JavaScript 示例吗? GRAPH 站点中提供的示例用于从 SharePoint Online 外部调用 GRAPH API。
我知道每个请求都需要一个 token ,您必须登录才能获取该 token 。但是,如果我从 SharePoint Online 中调用 GRAPH API,则意味着我已经通过身份验证,因此再次登录没有意义。该 token 应该在某处可用,但我不知道如何获取它(它在 SharePoint Online URL 中不可用)。
最佳答案
Microsoft Graph 受 Azure AD 保护,Azure AD 支持使用 OAuth 检索访问 token 以调用它。
据我所知,SharePoint 的 token 发行者与 Microsoft Graph 不同。
共享点:
在低信任授权系统中,颁发者为 Azure ACS,其 GUID 为 00000001-0000-0000-c000-000000000000。它的格式是 GUID@SharePoint 领域 GUID。
微软图表:
发行者是来自用户租户的安全 token 服务。它的格式就像 https://sts.windows.net/049bef5f-8841-4000-984b-c3f36bdb2d8c/ 。
根据我的理解,它无法直接在 SharePoint 在线页面中请求 Microsoft Graph。作为解决方法,您可以使用 客户端凭据 流构建 Web 服务,该流不需要用户作为 Microsoft Graph 的服务代理参与身份验证。
或者,如果您希望 Microsoft Graph 支持此功能,您可以提交来自 here 的反馈。
关于office365 - 如何从 SharePoint Online 页面中调用 Microsoft GRAPH API,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39432909/