【发布时间】:2017-09-20 05:15:58
【问题描述】:
我正在开发一个 .Net Web 应用程序,在通过 Azure AD Connect 协议对 Azure AD B2C 进行身份验证后,我的应用程序中的控制器通过 MSAL 库(C# 代码)获取访问令牌以访问支持的 Web API。这一切都很好。 现在,我需要从同一个 Web 应用程序使用 JavaScript 来访问同一个支持的 Web API。我的问题是如何利用通过我的服务器端 C# 代码获得的访问令牌来让我的客户端 JavaScript 访问 Web API 而不会被提示登录。
我使用 GitHub 上的示例代码来帮助我入门。
下面是我的 JavaScript 代码。当我运行它时,我收到以下错误"user_login_error:User login is required"
if (!clientApplication) {
clientApplication = new Msal.UserAgentApplication(window.config.clientID, window.config.authority, authCallback);
clientApplication.redirectUri = window.config.redirectUri;
}
function ReloadInfo(type, language, location) {
clientApplication.acquireTokenSilent(window.config.b2cScopes).then(function (accessToken) {
ReadResource(accessToken, type, language, location);
}, function (error) {
clientApplication.acquireTokenPopup(window.config.b2cScopes).then(function (accessToken) {
ReadResource(accessToken, type, language, location);
}, function (error) {
debugger
logMessage("Error acquiring the access token to call the Web api:\n" + error);
});
})
}
谢谢!
【问题讨论】:
-
请正确格式化
标签: javascript c# asp.net-core-webapi azure-ad-b2c msal