Как использовать плагин регистрации Facebook - PullRequest
3 голосов
/ 12 сентября 2011

Привет, я хочу включить вход через Facebook в моем веб-приложении на Rails. Я красный об этом от https://developers.facebook.com/docs/plugins/registration/.

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

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 16 августа 2012

это код iframe, измените client_id и redirect_url с вашим идентификатором клиента и redirect_url

<iframe src="https://www.facebook.com/plugins/registration?
             client_id=MY_CLIENT_ID&
             redirect_uri=MY_REDIRECT_URI&
             fields=name,email,first_name,last_name"
        scrolling="auto"
        frameborder="no"
        style="border:none"
        allowTransparency="true"
        width="100%"
        height="330">
</iframe>

он будет автоматически вызывать redirect_url, предоставленный здесь, после нажатия на регистр. в этом методе facebook вернет вам одну переменную «signature_request», которая содержит все данные для пользователей. в методе вы можете декодировать подписанный запрос. это мой код для декодирования подписанного запроса

def decode_facebook_hash(signed_request)
  signature, str = signed_request.split('.')
  str += '=' * (4 - str.length.modulo(4))
  ActiveSupport::JSON.decode(Base64.decode64(str.gsub("-", "+").gsub("_", "/")))
end
0 голосов
/ 12 сентября 2011

Вы можете использовать камень OmniAuth.

Руководство по Railscast доступно здесь: http://railscasts.com/episodes/241-simple-omniauth

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