миллиона спасибо за чистое и полное доказательство решения такого измотанным функциональности. Я буквально собирается Blank за последние 2 недели, так как я наткнулся на то, верно, я считаю почти всех пользователей NEW-Facebooker, «facebook подключения выхода из системы полностью». Или, может быть, как раз это было просто отсутствие документации или какой-либо фрагмент кода я не смог найти до настоящего времени в Facebooker покровных документов.
Во всяком случае от всего, что, переходя к решению, которое заставило меня достичь его ... Следуя методу @James B выше.
Очевидно , я предполагаю , что вы все прочитали установки Facebooker, конфигурации и использования инструкций http://github.com/mmangino/facebooker . Я также использовал плагин «authlogic_facebook_connect» , который вы можете найти на странице github.com kalasjocke / authlogic_facebook_connect.
Теперь предположим, что вы уже настроили приложение для работы с Facebook Connect с помощью fb_login_button или authlogic_facebook_login_button. Щелчок на ней вы увидите всплывающее окно, чтобы войти себя в аккаунт facebook и в локальную учетную запись вашего приложения. После входа в систему вы будете получать facebook_session обрабатывать сохранения нового пользователя в вашей БД (только если вы хотите).
По умолчанию вы не хотите получать на день рождения и адрес электронной почты пользователей в facebook_session в качестве ответа от Facebook. Чтобы получить их, то Вам нужно что-то подобное в вашей инициализации Javascript в теге тела страницы RHTML ...
<%= fb_connect_javascript_tag %> <%=
init_fb_connect "XFBML",{
:app_settings=>" {
permsToRequestOnConnect :
'email,user_birthday' }"} %>
<%= authlogic_facebook_login_button %>
Теперь, наконец, что я сделал для получения вышел из обоих Facebook и мой сайт.
Внутри заголовка приложения или там, где вход, выход, LoggedIn пользователей своего названия и т.д. покажет ...
: Удалить%>
Две кнопки выхода из системы предназначена для различных видов пользователей .. а. которые зарегистрированы непосредственно на вашем сайте, б. который зарегистрированный на ваш сайт с помощью Facebook
- Маршрут для logout_both в routes.rb
map.connect "/ logout_both",: контроллер => "пользователи",: действие => "logout_both"
Действие для logout_both внутри users_controller.rb
Защиту logout_both current_user_session.destroy #clear_facebook_session_information вспышки [: извещение] "! Выход успешным" = Конец redirect_to root_path #End метода logout_both
Вы должны убедиться, что нет никаких фильтров, определенных в контроллер, который может ограничить logout_both действие, которое будет выполняться без сессии.
Ах да, и если вам интересно, почему это «clear_facebook_session_information» комментируется в действии. Не Тогда не беспокойтесь, вы уже вышли из Facebook перед входом в это действие, эта линия больше не нужна. Boss мы используем «fb_logout_link», который первый журналы вы и затем перенаправляет вас к этому новому действию.
Ну, вот об этом. Если это не делает ........ пачкать руки, как я делаю .. копать .. решить ее самостоятельно. Facebooker глубок, но имеет определенную END !!!
Опять же большое спасибо Mangino & kalasjocke для изготовления фейсбук подключения практически не болезненного для рельсов.
Одно уточнение людей ... в моем ответе выше .. Существует деревенщина, которая .. После выхода из системы, если вы обновите страницу .. он бы снова показать вам войти в систему на вашем сайте .. однако вы успешно вышли из Facebook. Я был неправ, БОЛЬШАЯ РАЗЪЯСНЕНИЕ ...... Как по сути дела вы НУЖНЫ эти две строк в «logout_both» действия
def logout_both <br/>
current_user_session.destroy<br/>
clear_facebook_session_information #MANDATORY TO COMPLETELY CLEAR COOKIES<br/>
reset_session # TO BE 100% sure you can use it optionally<br/>
flash[:notice] = "Logout successful!"<br/>
redirect_to root_path <br/>
end