Devise Handle Duplicate Sign Requests - PullRequest
       3

Devise Handle Duplicate Sign Requests

4 голосов
/ 08 августа 2011

Я исправляю приложение, которое должно поддерживать повторяющиеся запросы входа в систему, отправляемые на сервер (для разработки). Запросы отправляются через JSON. В настоящее время, если я позвоню следующее несколько раз:

curl -v -b cookie.file -c cookie.file -H "Content-Type: application/json" -X POST -d '{"user":{"username":"kevin","password":"password"}}' http://localhost:3000/users/sign_in.json

Первое приводит к 201 коду состояния, а второе - 302, которое перенаправляет на HTML-страницу. Я переопределил метод create в Users::SessionsController, однако пользовательский код вызывается только при первом POST (во второй ничего не происходит). Есть ли способ получить второй запрос, чтобы не перенаправить перфорацию? Вот что у меня есть:

class Users::SessionsController < Devise::SessionsController
  def create
    logger.info "Users::SessionController"
    super
  end
end

Ответы [ 2 ]

2 голосов
/ 13 октября 2011

Я оказался здесь, поскольку у меня была та же проблема. Вход в не навигационные форматы не был идемпотентным, так как я был перенаправлен на html-версию, если я уже прошел аутентификацию.

Эта проблема была решена по состоянию на 29 сентября с этим коммитом.

На сегодняшний день вы должны использовать Edge Design, чтобы он работал с вашим приложением.

# Gemfile
gem 'devise', git: 'git://github.com/plataformatec/devise.git'
0 голосов
/ 09 августа 2011

Переопределение SessionsController не так гладко, как другие вещи в Devise.Я думаю , что вы просите, очень похоже на эту статью .Возможно, это не совсем точно, но речь идет о том, как создать среду входа в систему с чистым JSON.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...