Я получил эту регистрационную форму:Laravel 5.1. Токен от и маркер сеанса отличаются с помощью мобильного браузера (действие) Логин
<form class="form-horizontal" role="form" method="POST" action="{{ url('/auth/login') }}">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
...
я Войти без проблем с помощью браузера с рабочего стола (IE, Chrome, Firefox, .. .), но проблема исходит от мобильного устройства (платформа Android).
Я получил это ИСКЛЮЧЕНИЕ:
TokenMismatchException in VerifyCsrfToken.php line 53.
Когда я пошел в VerifyCsrfToken.php я обнаружил, что маркер передается из формы и маркеров taked от объекта сессии различен. Но это происходит только с моего телефона Android.
О функции называется tokensMatch
в файле VerifyCsrfToken.php (link to github) Я добавить этот код, чтобы увидеть, что происходит:
echo '<br>X-CSRF-TOKEN:'.$request->header('X-CSRF-TOKEN');
echo '<br>X-XSRF-TOKEN:'.$request->header('X-XSRF-TOKEN');
echo '<br>token:'.$request->input('_token');
echo '<br>sessionToken:'.$request->session()->token();
Токен и sessionToken различны (остальные два значения являются пустыми).
Любые подсказки об этом? Это происходит только с помощью мобильного устройства (два тестируемых Android).
UPDATE: Я установил входной ток в текст для просмотра содержимого из браузера. Дело в том, что в мобильных устройствах, когда я обновляю url [domain.com]/auth/login, изменения токена в каждом вызове, однако, из браузера рабочего стола токен не изменяется. Я думаю, что в мобильных устройствах сеансы создаются и уничтожаются при каждом вызове.
ОБНОВЛЕНИЕ 2: Я подтверждаю, что проблемы возникают при смене токена в каждом запросе. Я не знаю, что это происходит только с мобильных устройств.