未通过身份验证时,无法让 keycloak 重定向到通用登录页面

1 javascript keycloak

项目是使用通用登录页面和密钥斗篷的较大站点的一部分。keycloak 脚本是所有页面都使用的布局的一部分。当未通过身份验证的用户到达页面时,它会正确地将其标识为“未通过身份验证”并发出警报。但它不会重定向到页面。

这是所有页面使用的基本布局中的脚本:

在此处输入代码

<script src="https://someplace.com/auth/js/keycloak.js"></script>    

<script>
  var keycloak = Keycloak({
    url: 'https://someplace.com/auth',
    realm: 'myrealm',
    clientId: 'myclientid'
  });

  keycloak.init().success(function(authenticated) {
    alert(authenticated ? 'authenticated' : 'not authenticated');
  }).error(function() {
    alert('failed to initialize');
  });
</script>
Run Code Online (Sandbox Code Playgroud)

它给出了正确的警报“未通过身份验证”,但不会重定向到登录页面“ https://someplace.com/auth ”

Joe*_*Joe 5

看一下文档[1]:

默认情况下,您需要调用登录功能进行身份验证。但是,有两个选项可用于使适配器自动进行身份验证。

我认为您缺少直接调用keycloak.login()或使用keycloak.init({ onLoad: 'login-required' }).