В нашей текущей реализации SPA мы аутентифицируем против AzureAD с помощью adal.js, и после успешной аутентификации удалите наш веб-api, чтобы получить данные авторизации. Существует несколько сценариев крайних случаев, когда запрос на получение данных авторизации может выйти из строя. В этом случае мы хотели бы очистить состояние/кеш, созданный adal.js. Я пробовал несколько вещей, но я не смог создать чистый список. Вот какой код я попробовал.Adal.js выходит без переадресации
localStorage.clear();
var authContext = AuthenticationContext.prototype._singletonInstance;
authContext.clearCache();
authContext._user = null;
Я не хочу использовать встроенную функцию выхода из системы. Вызов выхода из системы перенаправляет пользователя на страницу выхода Azure. UX довольно странный, поэтому он пытается избежать этого.
Я использую встроенный выход, чтобы пользователь мог выйти из системы в обычном сценарии. Но в случае неудачного сценария мне нужно сделать это программно. Встроенный выход не подходит для меня, так как происходит перенаправление. Я пробовал clearCache, но это не уничтожает состояние cookie/session. – kolhapuri
clearCache не уничтожит состояние cookie/сеанса, как я уже сказал, он очищает только локальный ресурс/sessionstorage. adal.js не предоставляет вам способ сделать это. Вероятно, вы могли бы попытаться реализовать молчащий выход (возможно, используя iframe, это предотвратит отображение ux), а затем вызовите clearCache, чтобы очистить localstorage/sessionstorage. –