Angular 13 - BrowserAuthError : interaction_in_progress : interaction en cours détectée
P粉176203781
P粉176203781 2024-03-27 13:57:20
0
1
457

J'ai eu l'erreur suivante lorsque je me suis déconnecté et que j'ai immédiatement essayé de me reconnecter. Seule la fermeture du navigateur semble résoudre le problème. Je suppose donc qu'il s'agit d'une sorte de problème de mise en cache, mais je n'arrive pas à trouver un moyen de le contourner.

Voici le code de connexion que j'utilise actuellement :

async signIn() {
    // console.log(this.appMSALObj)
    var _this = this;
    await this.appMSALObj.loginPopup(settings.loginRequest)
      .then(function(response) {
        //console.log("authService: login complete")
        _this.selectAccount();
        //console.log(_this.account)
        _this.router.navigate(['/home'])
      })
      .catch(error => {
        console.error(error);
      });
  }

Il n'entre jamais dans la fonction selectAccount.

msalConfig est configuré pour utiliser localStorage et l'indicateur storeAuthStateInCookie est faux.

P粉176203781
P粉176203781

répondre à tous(1)
P粉066224086

Un peu tard pour répondre, mais je vais essayer.

Selon docs Cela se produit lorsque la première opération n'est pas encore terminée et que la deuxième opération est déclenchée. Par exemple :

loginPopup();
acquireTokenPopup();

Dans ce cas, interaction_in_progress arrivera. Vous pouvez facilement éviter cela en attendant :

await msalInstance.loginPopup();
await msalInstance.acquireTokenPopup();

Dans certains cas, cela ne résout pas le problème. Dans mon cas, il manque <app-redirect></app-redirect> 也可能导致此错误。它必须放在您的 index.html dans :

  
  

Chose amusante à noter : si vous changez app-routing.module.ts 中提到的每个路由强制登录,即使您不使用 <app-redirect></app-redirect>, cela fonctionne toujours sans erreur

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal