По какому триггеру я могу получить id_token без вывода сообщений через метод msalObj.acquireTokenSilent () MSAL? - PullRequest
1 голос
/ 06 марта 2020

Каковы различные способы установки триггера для msalObj.acquireTokenSilent(), чтобы он вызывался по истечении срока действия id_token, хранящегося в локальном хранилище? Я пытался вызвать функцию, вызвав ее через setTimeout(), но по мере обновления страницы setTimeout теряется. Есть ли более эффективный способ реализации вышеуказанной логики c?

1 Ответ

0 голосов
/ 09 марта 2020

Мы всегда начинаем с acquireTokenSilent, чтобы получить токен вошедшего в систему пользователя из кеша. Мы вызовем acquireTokenPopup при сбое acquTokenSilent (истечение срока действия токена).

myMSALObj.acquireTokenSilent(requestObj).then(function (tokenResponse) {
         callMSGraph(graphConfig.graphMeEndpoint, tokenResponse.accessToken, graphAPICallback);
    }).catch(function (error) {
         console.log(error);
         // Upon acquireTokenSilent failure (due to consent or interaction or login required ONLY)
         // Call acquireTokenPopup(popup window)
         if (requiresInteraction(error.errorCode)) {
             myMSALObj.acquireTokenPopup(requestObj).then(function (tokenResponse) {
                 callMSGraph(graphConfig.graphMeEndpoint, tokenResponse.accessToken, graphAPICallback);
             }).catch(function (error) {
                 console.log(error);
             });
         }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...