Zion默认不自动跳转登录页,未登录访问权限页面会白屏或报错;需手动在行为流加登录检查分支,或在页面权限中启用“未登录重定向”(2.3.0+),且登录页必须对未认证用户开放读取权限。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当用户未登录就直接访问需要权限的页面时,函子Zion默认不会自动跳转到任何登录页——它会显示空白、报错或拒绝渲染,具体表现取决于你是否在行为流和权限中显式配置了拦截逻辑。
默认行为:无跳转,仅报错或空白
Zion 不像传统框架(如 Flask 的 redirect() 或 Vue 路由守卫)内置未登录跳转机制。如果你没做任何配置,用户直接输入 /admin 或点击预约详情链接,系统会尝试加载该页面→读取数据→触发权限校验→因缺少登录态而返回空数据或 403 错误→前端组件渲染失败,最终呈现白屏或“无权限访问”提示。
这一步不报错也不跳转,但用户实际卡在不可用界面,体验断裂。
必须手动配置的跳转路径
要实现“未登录→跳登录页”,需在两个位置协同设置:
方法一:在行为流中插入登录检查分支
① 打开目标页面对应的行为流(例如“加载预约详情”);
② 在最开头添加「获取当前用户」节点;
③ 接一个「条件判断」:若 【user 为空】,则执行「跳转到页面」动作,目标设为「登录页」;
④ 否则继续执行原流程。
方法二:在页面级权限中启用「未登录重定向」
进入「权限管理」→选择该页面所在角色(如「客户」)→勾选「未登录时跳转至」→从下拉菜单中选择已存在的登录页面组件。这个选项只在 Zion 2.3.0+ 版本可用,旧版本不显示此字段。
注意:方法二仅控制页面入口,不保护后端数据查询。若行为流里仍存在未加校验的 API 调用,用户可能绕过页面跳转直接调用接口暴露数据。
登录页本身必须可匿名访问
确保你指定的登录页在权限配置中对「未认证用户」开放读取权限。否则跳转过去仍是 403。
在「权限管理」→「表/页面权限」→找到登录页组件→将「未认证用户」角色的「读取」权限设为「允许」。
【这是最容易遗漏的关键点】:哪怕行为流写了跳转,只要登录页本身被权限锁死,用户最终看到的还是拒绝访问提示,不是登录框。


















