双层鉴权架构:中间件终端门控 + 落地页按钮直连登录
LandingPage "进入产品"按钮改为 /auth/login?next=/terminal,消除未登录直达终端 再跳登录的视觉卡顿。Middleware 新增 handleTerminalGate(Layer 1), 在 /terminal 路由独立拦截未认证用户并 302 到登录页。 ScanTerminalDashboard 内 ProductAccessRequired 重构为 SubscriptionGate(Layer 2), 专注展示升级订阅提示。 Constraint: 双层顺序为认证优先 → 订阅检查在后 Tested: tsc --noEmit 通过, npm run build 通过
This commit is contained in:
@@ -157,7 +157,7 @@ function InstitutionalLandingScreen() {
|
||||
{isEn ? "Sign Up" : "注册"}
|
||||
</Link>
|
||||
<Link
|
||||
href="/terminal"
|
||||
href="/auth/login?next=%2Fterminal"
|
||||
className="inline-flex items-center gap-2 rounded-lg border border-blue-700 bg-blue-600 px-3 py-2 text-sm font-bold text-white shadow-sm transition hover:bg-blue-700"
|
||||
>
|
||||
{isEn ? "Enter Product" : "进入产品"}
|
||||
|
||||
Reference in New Issue
Block a user