2013-12-19 3 views
0

Я хочу, чтобы имитировать несколько функций в приложении моих рельсов, используя curl в терминале. Проблема, с которой я сейчас сталкиваюсь, заключается в том, что сначала я вхожу в систему в своем приложении, используя имя пользователя и пароль. Но тогда, пока я нажимаю на URL-адрес, соответствующий функции контроллера, он дает сообщение «Вы перенаправлены на страницу sign_in».Имитация контроллера рельсов с использованием CURL

Я думаю, что мне нужно как-то использовать токен аутентичности. Но я не знаю, как его получить и как передать его во время каждого вызова функции контроллера. Поэтому, если кто-нибудь поможет мне разобраться в этом, я буду очень благодарен.

+0

Вам необходимо пройти аутентификацию, а затем захватить файл cookie и отправить его с вашего запроса. Возможно, опция 'cookie-jar' cURL может помочь: http://curl.haxx.se/docs/http-cookies.html. – Nate

ответ

0

Вы можете проверить формат запроса, чтобы изменить код контроллера для обработки как запроса html, так и json отдельно.

В первом запросе введите токен доступа в ответ от вашего контроллера. Вы можете использовать этот токен аутентификации для дальнейшего запроса.

В порядке создание маркеров доступа

  • Создание миграции в таблице пользователей для аутентификации маркеров
  • Когда логины/Регистраций создать маркер проверки подлинности для этого пользователя

Как только вы сделаете эти ch вы можете получить информацию о пользователе, переданную с помощью запроса на завивание, и передать обратно токен аутентификации в ответ на пользователя. Для дальнейшего запроса используйте этот токен аутентификации, чтобы проверить пользователя и выполнить действия.

Смежные вопросы