Laravel 5.3: 刷新页面后会话销毁值
Laravel 5.3: session destroying value after refresh page
我正在尝试将一些数据存储在 Laravel 的负载基础控制器上,我使用 constructor
来执行此操作并且构造函数成功执行。但是当我在会话中存储值然后下次刷新页面时,相同的会话值显示 null:
namespace App\Http\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use App\Language;
use Session;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
function __construct()
{
if(Session::get('phrase') == null)
{
Session::put('phrase','test');
dump(Session::get('phrase'));
}
}
}
访问方式:
class DashboardController extends Controller
{
public function index()
{
if(!in_array(Auth::user()->role_id,[1,2])){
return redirect()->route('orsers.list',['filters'=>'']);
}
return view('dashboard.index');
}
我不明白我哪里错了??
在您的 app/Http/Kernel.php 中重新排列以下中间件组...
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
'throttle:60,1',
'bindings',
],
];
如果您的 $middlewareGroups 已经像这样订购了,请告诉我,我们可以进一步调试。
我正在尝试将一些数据存储在 Laravel 的负载基础控制器上,我使用 constructor
来执行此操作并且构造函数成功执行。但是当我在会话中存储值然后下次刷新页面时,相同的会话值显示 null:
namespace App\Http\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use App\Language;
use Session;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
function __construct()
{
if(Session::get('phrase') == null)
{
Session::put('phrase','test');
dump(Session::get('phrase'));
}
}
}
访问方式:
class DashboardController extends Controller
{
public function index()
{
if(!in_array(Auth::user()->role_id,[1,2])){
return redirect()->route('orsers.list',['filters'=>'']);
}
return view('dashboard.index');
}
我不明白我哪里错了??
在您的 app/Http/Kernel.php 中重新排列以下中间件组...
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
'throttle:60,1',
'bindings',
],
];
如果您的 $middlewareGroups 已经像这样订购了,请告诉我,我们可以进一步调试。