我正在尝试仅为某些路线添加keycloack登录,其他路线将是公开的。用户可以看到路线(页面)。
默认情况下,我正在尝试加载公共页面,当用户尝试提交详细信息时,我必须要求他登录
try {
await keycloak.init({
config: {
url: 'http://localhost:8080/auth',
realm: 'your-realm',
clientId: 'client-id'
},
initOptions: {
onLoad: 'login-required',
checkLoginIframe: false
},
bearerExcludedUrls: [
'/assets',
'/clients/public'
],
});
resolve();
} catch (error) {}
但仍然会重定向到keycloack登录。
https://www.npmjs.com/package/keycloak-angular 我按照上面提到的链接
的文档谢谢。
答案 0 :(得分:0)
您需要的是Route Guard。
但是请read the guide了解如何在本网站上正确提问。
答案 1 :(得分:0)
尝试注释keycloak初始化选项“ onLoad:'需要登录'”。如果keycloak从应用程序应用程序启动时开始,那么您必须在浏览器中打开应用程序时登录。注释掉onLoad之后,仅当您输入位于AuthGuard后面的网址时,才需要登录。