繁体   English   中英

如何在不出现 401 错误的情况下访问 msal graph api

[英]How to access the msal graph api without getting 401 error

我一直在使用 msal 使用acquireTokenSilent调用将用户登录到应用程序中,并且效果很好。 我能够获得包含accessTokenidToken等内容的响应令牌。 但是当尝试使用图形 api 通过在不记名标头中使用这些令牌中的任何一个来获取帐户照片时,我收到 401 错误。 我正确调用它,因为通过使用图形资源管理器中显示的令牌它可以正常工作。

基本上我的问题是,我如何获得这个访问令牌来调用图形 api。

我正在尝试在使用 JavaScript 的网络应用程序中执行此操作。

    axios.get("https://graph.microsoft.com/v1.0/users/" + this.username + "/photos/48x48/$value", {
                    headers: {
                        Authorization:
                            "Bearer " +
                            "insertTokenHere"
                    },
                    responseType: "blob"
                })

                .then(response => {

使其工作的几件事 -

  1. 基于授权协议,获取承载令牌以访问端点。 如果您使用授权代码流,请参阅此处的文档。

  2. Scope 参数是必需的,它只是您希望用户同意的以空格分隔的范围列表。 确保您了解每个 API 端点的必要权限。 ms docs 中记录了每个 API 端点的必要权限。 请参阅此处的示例。

此外,确保管理员在任何需要的地方都同意。

谢谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM