Как правильно использовать OmniAuth + Devise при разработке вкладки Facebook? - PullRequest
1 голос
/ 04 января 2012

Я разрабатываю простое приложение для Facebook, которое будет жить на вкладке Страницы. Я пытаюсь выяснить, что является лучшим методом для аутентификации пользователей. Кажется, что нормальное перенаправление страниц неправильно, именно так OmniAuth + Devise делает это «из коробки». Как я могу заставить это работать с диалогом аутентификации JavaScript SDK?

Ответы [ 2 ]

2 голосов
/ 14 января 2012

Как сказал DMCS, FB.getLoginStatus и FB.login сделают это на стороне JS.Что касается подключения его к devise / omniauth, при условии, что вы используете последнюю версию omniauth, в которой логика конкретного провайдера была разделена на собственные драгоценные камни, страница Github на facebook-omniauth объясняет это так:

Поток на стороне клиента поддерживает анализ кода авторизации из подписанного запроса, который Facebook помещает в cookie.Это означает, что вы можете использовать Facebook Javascript SDK, как обычно, и просто нажимаете на конечную точку обратного вызова (/ auth / facebook / callback по умолчанию), когда пользователь прошел аутентификацию в успешном обратном вызове FB.login.

Теперь это приятно и просто.После FB.login, простой window.location.href = '/ auth / facebook / callback' сделает свое дело!

0 голосов
/ 04 января 2012

Да, вы можете заставить его работать быстро с Javascript SDK.Следуйте примеру здесь: https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus/ и https://developers.facebook.com/docs/reference/javascript/FB.login/

...