【问题标题】:Infinite loop when unauthorized user tries to access web page (authorization via adal-angular)未经授权的用户尝试访问网页时的无限循环(通过 adal-angular 授权)
【发布时间】:2020-05-23 03:09:48
【问题描述】:

我有一个基于 Web 的仪表板,它使用 adal-angular 对用户进行身份验证。授权用户可以毫无问题地访问该页面,但是当用户未经授权时,他们会进入登录页面的无限循环。

这是我的初始代码:


AuthContext.handleWindowCallback();

if ((window === window.parent) && window === window.top && !AuthContext.isCallback(window.location.hash)) {

  if (!AuthContext.getCachedToken(adalConfig.clientId) || !AuthContext.getCachedUser()) {
    AuthContext.login();
    }
  } 
  else 
  {
    AuthContext.acquireToken(adalConfig.endpoints.xyz, (message, token, msg) =>{
      if (token) {
        ReactDOM.render(
          //rendering code
        );
      }
    });
  }

移动后'AuthContext.handleWindowCallback();'在第一个 if 条件内,用户不再进入无限循环。但是错误页面没有按预期显示。他们只是得到一个空白页面,但 url 有用户未通过身份验证的消息。

当用户未通过身份验证时,如何获得工作错误页面?有没有办法以编程方式访问错误消息?

【问题讨论】:

    标签: azure-active-directory adal adal-angular4


    【解决方案1】:

    尝试调用:

    AuthContext.getLoginError()
    

    之后

    AuthContext.handleWindowCallback()
    

    【讨论】:

      猜你喜欢
      • 2012-01-19
      • 2013-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-05
      • 2015-03-05
      • 1970-01-01
      • 2012-11-19
      相关资源
      最近更新 更多