You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel+VueJS POS系统JWT登录后重定向异常求助

解决方案

看起来你现在的问题核心是登录成功后没有正确判断cash session的存在状态,导致无论有没有会话都跳转到/Cash。咱们可以分两步来搞定这个问题:

1. 后端新增检查活跃收银会话的接口

首先得在Laravel后端加一个API接口,用来验证当前登录用户是否存在有效的cash session。

在routes/api.php里添加路由:

Route::get('/check-active-cash-session', 'CashSessionController@checkActive')->middleware('auth:api');

然后在CashSessionController里实现对应的逻辑(根据你的业务规则调整查询条件):

public function checkActive(Request $request)
{
    // 这里假设你的cash session表关联了用户,且有status字段标记是否活跃
    $hasActiveSession = $request->user()
        ->cashSessions()
        ->where('status', 'active')
        ->exists();

    return response()->json(['has_active' => $hasActiveSession]);
}

2. 前端修改登录逻辑,动态判断跳转路由

接下来修改Vue组件里的login方法,在登录成功后调用上面的接口,根据返回结果决定跳转方向:

methods: {
    login() {
        let app = this;
        this.$auth.login({
            params: {
                username: app.username,
                password: app.password
            },
            success: function () {
                // 登录成功后,调用检查会话的接口
                app.$axios.get('/api/check-active-cash-session')
                    .then(resp => {
                        if (resp.data.has_active) {
                            // 存在活跃收银会话,跳转到Dashboard
                            app.$router.push('/Dashboard');
                        } else {
                            // 没有活跃会话,跳转到Cash页面
                            app.$router.push('/Cash');
                        }
                    })
                    .catch(err => {
                        console.error('检查收银会话出错:', err);
                        // 兜底处理,默认跳转到Cash
                        app.$router.push('/Cash');
                    });
            },
            error: function (resp) {
                alert('Err...');
            }
        });
    }
}

几个关键提醒

  • 确保$auth.login成功后,JWT Token已经正确存储,这样调用带auth:api中间件的接口时才能通过身份验证。
  • 后端的会话查询逻辑要完全匹配你的业务规则,比如是否需要判断会话的有效期、是否关联当前门店(如果有多门店场景)等。
  • 如果你的vue-auth库有登录后自动获取用户信息的机制,也可以把会话检查逻辑整合到用户信息的获取请求里,减少一次接口调用。

内容的提问来源于stack exchange,提问作者Thomas Delputte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:40:07