Недопустимый токен аутентификации в Rails

dfaulken спросил: 26 декабря 2017 в 07:40 в: ruby-on-rails

Пытаясь войти в систему с пользователем Devise, я получаю недопустимую ошибку токена аутентификации.

У меня есть csrf_meta_tags в моем макете, и есть authenticity_token присутствует в параметрах запроса. Как указано в ответах на другие вопросы, protect_from_forgery with: :exception находится перед before_action :authenticate_user!.

Если я прокомментирую protect_from_forgery, я вижу следующее в мой журнал сервера:

Started POST "/users/sign_in" for 127.0.0.1 at 2018-01-19 16:13:46 -0500
Processing by Devise::SessionsController#create as HTML
    Parameters: {"utf8"=>"✓", "authenticity_token"=>"[TOKEN]", "user"=>{"badge_number"=>"0285", "password"=>"[FILTERED]"}, "commit"=>"Log in"}
    User Load (0.3ms)  SELECT  `users`.* FROM `users` WHERE `users`.`badge_number` = '0285' ORDER BY `users`.`id` ASC LIMIT 1
     (0.2ms)  SELECT `divisions`.`id` FROM `divisions` INNER JOIN `divisions_users` ON `divisions`.`id` = `divisions_users`.`division_id` WHERE `divisions_users`.`user_id` = 2
    CACHE  (0.0ms)  SELECT `divisions`.`id` FROM `divisions` INNER JOIN `divisions_users` ON `divisions`.`id` = `divisions_users`.`division_id` WHERE `divisions_users`.`user_id` = 2  [["user_id", 2]]
Redirected to http://localhost:3000/
Completed 302 Found in 141ms (ActiveRecord: 2.1ms)Started GET "/" for 127.0.0.1 at 2018-01-19 16:13:46 -0500
Processing by IncidentsController#index as HTML
Completed 401 Unauthorized in 0ms (ActiveRecord: 0.0ms)

Таким образом, похоже, что логин работает, но затем перенаправление на запрошенный путь (/) приводит к ошибке 401 и перенаправляется на страницу входа в систему, как будто вход не работает.

Однако ничто из этого не объясняет, почему я впервые получаю ошибку токена аутентификации.

что следующий шаг для исследования проблемы может быть, учитывая, что, насколько я вижу, все необходимые элементы для проверки токена CSRF находятся на месте.

0 ответов