登陆后使用 redirect 无法携带 Session ?

public function callback(Request $request)
    {
        $user = Socialite::with('qq')->user();
        if (Auth::check()) {
            $oauth = OAuthUser::where('user_id', '=', \Auth::id())->first();
            if (!$oauth) {
                $oauth = new OAuthUser();
                $oauth->user_id = \Auth::id();
                $oauth->save();
            }
            $oauth->qq_id = $user->id;
            $oauth->qq_info = json_encode($user->user);
            $oauth->save();
            return redirect(route('www.auth.secure'));
        }

        $oauth = OAuthUser::where('qq_id', '=', $user->id)->first(['user_id']);
        if ($oauth) {
            $uu = Auth::guard('web')->loginUsingId($oauth->user_id, true);
            flash('登陆成功'); // 在这里 session 是存在的包括登陆的信息
            return redirect($this->redirectPath()); // 这里转跳到首页后登陆的 session 信息不存在了
        }
        flash('此QQ未绑定任何账号!');
        return redirect(route('www.auth.oauth'));
    }

转跳之后登陆的session就不存在我看了自带的 loginctonroller 也是redirect 转跳的为什么我自己写的不会携带session呢?

thanks.
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
StringKe
最佳答案

已经解决

请注意你的路由是否经过了默认的 web 路由组,如果没有经过 web 的路由组是没有携带 session 的

Route::group(['middleware' => ['web']], function () { // 必须
    Route::get('oauth', 'Auth\OauthController@index')->name('www.auth.oauth');
});
4年前 评论
讨论数量: 2

输出javascript跳转

4年前 评论
StringKe

已经解决

请注意你的路由是否经过了默认的 web 路由组,如果没有经过 web 的路由组是没有携带 session 的

Route::group(['middleware' => ['web']], function () { // 必须
    Route::get('oauth', 'Auth\OauthController@index')->name('www.auth.oauth');
});
4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!