5
我遇到了MSAL(x)工作出現問題 - 登錄彈出成功,但是當我嘗試使用從id令牌中檢索並訪問令牌時,它會導致應用程序重新加載(所有資源,每個開發工具網絡選項卡),並引發錯誤「由於超時:令牌更新操作失敗:null」。我已經搜索了相關的SO問題/谷歌,但沒有運氣發現類似的問題。瘋狂的事情是,它有一天工作,剛剛停止 - 即使恢復到相同的代碼不能解決問題。在反應中使用MSAL,acquireTokenSilent導致應用程序刷新並失敗
在silent的錯誤處理程序中使用acquireTokenPopup
會顯示一個彈出窗口,但不允許用同一用戶登錄('我們無法識別此域名'),但會顯示正確的MS App名稱。這真讓我抓狂。
相關代碼(在一個陣營組件單擊處理):
onMSLogin() {
const { msLoginFailure } = this.props;
const userAgentApplication = this.userAgentApplication;
userAgentApplication.loginPopup(['user.read'])
.then(function() {
console.log('User login success');
const scopes = ['User.Read'];
userAgentApplication.acquireTokenSilent(scopes).then((accessToken) => {
console.log('Access token acquired (silent): ', accessToken);
this.getGraphData(accessToken);
}, (error) => {
console.error('Silent token fail: ', error);
userAgentApplication.acquireTokenPopup(scopes).then((accessToken) => {
console.log('Access token acquired (popup): ', accessToken);
});
})
}, function (error) {
// handle error
console.log('MS Login Failure: ', error);
if (msLoginFailure) msLoginFailure(error);
});
}
我現在也有同樣的問題。你能解決這個問題嗎? –
排序 - 就像它有一天工作,下一個沒有,它再次工作的那一天,沒有代碼的變化。我認爲這是他們的一個問題,因爲我的結局沒有變化。 –