gpt4 book ai didi

reactjs - React SPA 中的 msal - 使用从 AcquireTokenRedirect 收到的访问 token

转载 作者:行者123 更新时间:2023-12-05 02:11:57 30 4
gpt4 key购买 nike

我有一个 React SPA,并且我正在使用 msal 通过 loginRedirect 对 Microsoft 用户进行身份验证。登录后,我使用 acquireTokenSilent 静默获取访问 token 来调用 Web API。当获取访问 token 失败并且需要交互时,我使用 acquireTokenRedirect。

当我使用 acquireTokenRedirect 时,我看到的是:1. 用户被重定向到login.microsoftonline.com。2. 返回 302 响应,其中包含重定向 url + 访问 token 的 Location header 。3. 对我的重定向 URL 的 GET 请求 - 我的回调被调用。4. 另一个重定向到我的应用程序根目录。

这最后一个重定向使我的应用程序再次被提供服务,并且我丢失了应用程序状态的访问 token 。此外,我失去了将用户重定向到特定路线的能力。

获取访问 token :

getAccessToken = async () => {
let accessTokenRequest = { scopes: [...]
};
try {
var accessTokenResponse = await
this.authAgent.acquireTokenSilent(accessTokenRequest);
return accessTokenResponse.accessToken;
} catch (error) {
const errorCode = error.name;
if (errorCode === "consent_required" || errorCode === "interaction_required") {
await this.authAgent.acquireTokenRedirect(accessTokenRequest);
}

throw error;
}
};

最佳答案

为了避免额外的重定向,我需要做的是将身份验证配置中的“navigateToLoginRequestUrl”参数设置为 false。这解决了我的问题。

关于reactjs - React SPA 中的 msal - 使用从 AcquireTokenRedirect 收到的访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56735892/

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