1
クッキーセッションドライバに問題があります。私は、クッキーだけで動作するアプリケーションを作成する必要があります。私の設定では、セッションはCookieドライバでLaravel 5.2に残っていません。 ファイルセッションドライバを使用すると動作します。Laravel 5.2セッションクッキードライバ
.envファイル:
SESSION_DRIVER=cookie
私は、カスタムセッション値が存在するかどうかをチェックするミドルウェア(のみhandle()
機能)を作成しました:
public function handle($request, Closure $next)
{
//dd(session('auth')) // null
if (!session('auth')) {
if ($request->ajax() || $request->wantsJson()) {
return response('Unauthorized.', 401);
} else {
return redirect('/');
}
}
return $next($request);
}
私は$routeMiddleware
にミドルウェアを追加しましたのapp/Http/Kernel.phpの配列:
'cookies' => \App\Http\Middleware\CheckCookies::class,
の
私のルートは以下のとおりです。
public function login()
{
session([
'auth' => ['name' => 'John Doe']
]);
return redirect('/home');
}
がどのように私はこの問題を解決することができます
Route::group(['middleware' => ['web']], function() {
Route::get('/', '[email protected]');
Route::post('login', '[email protected]');
Route::group(['middleware' => 'cookies'], function() {
Route::get('home','[email protected]');
Route::get('logout','[email protected]');
});
});
ここに私の[email protected]
方法ですか?