Я использую пакет NPM [MSAL] [1] для входа с Azure AD. На моем компьютере все работает нормально, однако на телефоне вы должны нажать, обновить sh и нажать еще раз. Это очень ненадежно и не удобно для пользователя.
После небольшого исследования кажется, что я мог бы исправить свои проблемы, переключившись с loginPopup на loginRedirect, но я не видел хороших примеров или документации о том, как переключить мой уже работающий код. Кто-нибудь имеет опыт работы с этим и может дать мне подсказку, прежде чем мне придется все переписать?
Спасибо!
constructor(){
super();
this.state = {
userData: {},
myMSALObj: new Msal.UserAgentApplication({
auth: {
clientId: process.env.REACT_APP_CLIENT_ID,
authority: process.env.REACT_APP_AUTHORITY
},
cache: {
cacheLocation: "localStorage",
storeAuthStateInCookie: true
}
})
}
}
signIn() {
var userRead = ["user.read"];
this.state.myMSALObj.loginPopup(userRead).then( () => {
this.acquireTokenPopupAndCallMSGraph();
}).catch( (error) => {
console.log(error);
});
}
acquireTokenPopupAndCallMSGraph() {
var userRead = ["user.read"];
this.state.myMSALObj.acquireTokenSilent({scopes: userRead}).then( (tokenResponse) => {
this.callMSGraph('https://graph.microsoft.com/v1.0/me', tokenResponse.accessToken);
}).catch( error => {
console.log(error)
})
}
[1]: https://www.npmjs.com/package/msal