#laravel-5.2 #csrf-protection
#laravel-5.2 #csrf-защита
Вопрос:
Я немного потерялся.
Я вижу МНОГО исключений TokenMismatchException в своих рабочих журналах, и все они были получены с устройств Android (я регистрирую useragent, ip, url и метод запроса с каждым исключением)
По сути, это простая целевая страница с формой, поэтому я не вижу причин, по которым люди могут находиться на странице в течение нескольких часов (это приведет к истечению срока действия сеанса). Я также передаю содержимое файла cookie XSEF-TOKEN, используя заголовок X-XSRF-TOKEN, так что это не должно быть проблемой
Я попытался использовать свой iPhone, и все работало с: Safari (как в частном, так и в обычном режимах), Chrome и встроенным браузером Facebook
Я также попытался использовать LG G4 моей подруги, используя Chrome, встроенный в браузер Android и встроенный браузер Facebook, и это тоже сработало.
Я временно отключил промежуточное программное обеспечение csrf для этого конкретного маршрута, чтобы люди не получали ошибок, но это может быть действительно плохо. Итак, что мне делать дальше?
Я использую Laravel 5.2, драйвер сеансов — это файл (невозможно выполнить повторный просмотр с сервера, который дал мне клиент), а каталог сеансов доступен для записи. В каталоге находится множество сеансов, поэтому это не проблема с разрешениями. Версия PHP — 6.5.18.
Спасибо!
Комментарии:
1. Вы проверили, правильно ли отправлен идентификатор сеанса со следующим запросом клиента?
2. Пока существует файл cookie сеанса, он должен работать. Я никогда не получал ошибку и не мог воспроизвести ее ни на ПК, ни на устройстве iphone / andriod.