Nano Hash - криптовалюты, майнинг, программирование

Решение TokenMismatchException в VerifyCsrfToken.php в запросе POST

Я новичок в Laravel. Я создал несколько маршрутов для GET и POST, но работают только GET. POST всегда возвращает TokenMismatchException, даже если процесс внутри и запрос к базе данных выполняются правильно. Некоторые из вопросов, которые я видел на SO, обычно касались AJAX, и решение включало отправку токена. Но я пока не использую AJAX... и обычно в ответах говорилось, что если я использую обычную форму POST, Laravel вставит скрытый токен.

Вот код маршрута:

Route::post('/practice/{level_id?}/{group_id?}/{command?}', 'WebController@practice');
Route::get('/practice/{level_id?}/{group_id?}/{command?}', 'WebController@practice');

И вот как я получаю это на веб-контроллере:

public function practice($level_id = "", $group_id = "", $command = "")

Здесь что-то не так? Что может привести к сбою моего POST-запроса? Спасибо.

31.07.2016

  • отправить скрытое поле ввода примерно так <input name="_token" type="hidden" value="FaHZmwcnaOeaJzVdyp4Ml8B6l1N1DLUDsZmsjRFL"> 31.07.2016
  • @ChoncholMahmud, ты имеешь в виду <input type="hidden" name="_token" value="{{ csrf_token() }}">? 31.07.2016
  • Да, я имею в виду. Не могли бы вы показать мне поле формы? 31.07.2016
  • @ChoncholMahmud о, после добавления кода и очистки кеша теперь все работает. Я путал обычные формы с построителями форм, которые я прочитал в этом вопросе title="tokenmismatchexception in verifycsrftoken php, строка 53 в laravel 5 1"> stackoverflow.com/questions/30934906/, который советовал удалить токен. Спасибо! 31.07.2016

Ответы:


1

Пожалуйста, добавьте скрытое поле в свою форму. Если вы используете конструктор форм Laravel, он автоматически добавляет скрытое поле маркера в вашу форму, когда вы делаете Form::open().
Попробуйте что-то вроде этого:

<input name="_token" type="hidden"  value="{{ csrf_token() }}">
31.07.2016

2

Если вы используете метод Form::open, который не поставляется с новыми версиями Laravel, вам необходимо установить его из здесь, тогда не будет проблем с TokenMismatchException. Но если вы используете теги формы HTML5, вам нужно добавить {{ csrf_field() }} в свою HTML-форму, которая будет генерировать

<input type="hidden" name="_token" value="53sfsffxth7AYe4RFSjzaPf2ygLCecJhbkhblah">
31.07.2016
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..