总是打电话
acquireTokenSilent
在调用API之前。让MSAL做缓存、刷新等,这就是它的用途。如果静默失败,则返回到AcquireTokenPopup或类似方法。
https://github.com/Azure-Samples/active-directory-b2c-javascript-msal-singlepageapp
function callApi() {
clientApplication.acquireTokenSilent(applicationConfig.b2cScopes).then(function (accessToken) {
callApiWithAccessToken(accessToken);
}, function (error) {
clientApplication.acquireTokenPopup(applicationConfig.b2cScopes).then(function (accessToken) {
callApiWithAccessToken(accessToken);
}, function (error) {
logMessage("Error acquiring the access token to call the Web api:\n" + error);
});
})
}
旁注:用于
获取令牌沉默
,MSAL实际上正在创建一个隐藏的iframe来获取令牌,这可能就是您在问题中所指的。