Я разработал приложение laravel 5, и все работает отлично, за исключением того, что я случайно получаю TokenMismatchException в строке 53 VerifyCsrfToken.php. Я не могу понять причину. Это происходит во время входа в систему. Я использовал встроенный признак laravel для реализации аутентификации. Ниже приведен мой метод выхода из системы.Как решить TokenMismatchException в Laravel 5 App
public function getLogout()
{
Auth::logout();
Session::forget('cart_id');
Session::forget('is_supervisor');
Session::forget('is_manager');
return redirect(property_exists($this, 'redirectAfterLogout') ? $this->redirectAfterLogout : '/');
}
Каждый раз, когда возникает исключение, я должен перезагрузить страницу и войти в систему еще до того, как это сработает. Ниже приведен пример моей формы входа:
{!! Form::open(array('class' => 'form-horizontal', 'role' => 'form')) !!}
<div class="form-group">
{!! Form::label('username', trans('home.username'), array('class' => 'col-sm-3 control-label')) !!}
<div class="col-sm-9 col-lg-5">
{!! Form::text('username', null, array('required' => 'required', 'class' => 'form-control input-sm')) !!}
</div>
</div>
{!! Form::close() !!}
Когда я проверяю исходный код страницы, маркер CSRF всегда доступен. Что может быть проблемой. Я использую laravel 5.1. * И SESSION_DRIVER = файл в .env.
Редактировать
// Authentication маршруты ...
Route::get('auth/login', 'Auth\[email protected]');
Route::post('auth/login', 'Auth\[email protected]');
Route::get('auth/logout', 'Auth\[email protected]');
Можете ли вы выяснить, когда возникает эта ошибка? – TheFallen
Эта ошибка возникает при попытке входа в систему. Когда я ввожу имя пользователя и пароль и отправляю, он показывает исключение. Чтобы решить проблему, я должен выполнить перезагрузку страницы, даже не обновляя и не войдя в систему, прежде чем она будет работать. Это происходит случайно не все время. Что действительно может быть проблемой. Я использую хелпер формы для создания моей формы, которая автоматически добавляет токены Cross Site Request Forgery. Что может быть неправильно ??? –
Можете ли вы отредактировать свой пост и добавить декларацию маршрутов для входа? Также, если у вас есть какое-либо промежуточное ПО, которое этот маршрут проходит, добавьте его также. – TheFallen