laravel session 获取不到

网上查到的,但是并未解决我的问题,先贴上来!底部是我的解决方案

通常 这种问题都是 未将路由置于 web 中间件下

protected $middlewareGroups = [
        //中间件web
        'web' => [
            \App\Http\Middleware\EncryptCookies::class,
            \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
            //看到这里了吗!StartSession!!!!要把路由放在这个中间件了才会启动Session!!
            \Illuminate\Session\Middleware\StartSession::class,
            \Illuminate\View\Middleware\ShareErrorsFromSession::class,
            \App\Http\Middleware\VerifyCsrfToken::class,
        ],

        'api' => [
            'throttle:60,1',
        ],
    ];


Kernel.php
----------
两种路由中间件写法各人喜好!
Route::get('/', function () {
    //路由放在这里
})->middleware('web');

Route::group(['middleware' => ['web']], function () {
    //路由放在这里
});

routes.php

下面开始说我的解决办法!
因为laravel框架原因,session写入是在程序执行完毕后开始保存的,虽然在同一个方法成功调用了,但是跨方法就获取不到了!
如果写入session的程序中执行了die();exit();会导致session无法保存成功!换成return解决!

猜你喜欢

转载自blog.csdn.net/u011140030/article/details/77365260
今日推荐