我之前开发了几个使用 Keycloak 进行身份验证和授权的 Vue 应用程序。对于 Vue 应用程序,Keycloak 提供了解决方案以确保未经身份验证的用户无法加载 Vue 应用程序,只有在用户经过身份验证时才初始化应用程序。
keycloak.init({ onLoad: initOptions.onLoad }).then((auth) => {
if (!auth) {
window.location.reload();
} else {
Vue.$log.info("Authenticated");
new Vue({
el: '#app',
render: h => h(App, { props: { keycloak: keycloak } })
})
}
...
现在,我正在做一个 Svelte 项目,我想应用相同的方法。有没有一种方法可以基于承诺初始化 Svelte 应用程序,类似于在 Vue 中使用 Keycloak 完成的方式?
我已经尝试寻找解决方案,但我没能找到任何专门解决 Svelte 问题的方法。
对我来说,最大的优势是您始终 100% 确定用户已通过身份验证,并且您始终可以访问 JWT 令牌以在必要时发送到后端。