Разработайте, twitter - запросите подтверждение по электронной почте - PullRequest
8 голосов
/ 17 сентября 2011

Я реализовал аутентификацию в Твиттере с помощью устройства, использующего что-то очень похожее на это: https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview

Мой вопрос таков: поскольку твиттер не дает вам электронную почту пользователя, как вы можете направить пользователя обратно к потоку:

  1. Пользователь входит через твиттер
  2. Пользователю предоставляется электронная почта
  3. Пользователь должен подтвердить свою электронную почту
  4. клик по ссылке подтверждения отправляет пользователя на сайт, вошедший в систему

Устройство в значительной степени заботится о # 3 и # 4. Как я должен структурировать свой код, чтобы позволить # 2 переходить в # 3 и # 4?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 26 сентября 2011

Показать новую форму пользователя на странице обратного вызова в твиттере.Храните твиттер-токен в скрытом поле.Затем вы можете создать нового пользователя в вашем контроллере и делать то, что вы хотите с помощью токена Twitter. User.create также отправляет электронное письмо с подтверждением.

User.create(:email => params[:email], :password => params[:password], :password_confirmation => params[:password_confirmation])
1 голос
/ 17 сентября 2011

Райан Бейтс освещает большую часть этого в своей скринкасте OmniAuth Часть 2 , чтобы получить подтверждение по электронной почте, все, что вам нужно сделать, это добавить параметр confirmable для разработки.

...