У меня проблема с файлом cookie. Мне нужно создать приложение, которое работает только с куки. В моей конфигурации сеанс не сохраняется в Laravel 5.2 с драйвером cookie. Если я использую файл , он работает.Laravel 5.2 session cookie driver
.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
массив в приложение/Http/Kernel.php:
'cookies' => \App\Http\Middleware\CheckCookies::class,
Мои маршруты:
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]
метод:
public function login()
{
session([
'auth' => ['name' => 'John Doe']
]);
return redirect('/home');
}
Как я могу это исправить?