如何注销 Facebook - 在 Rails 应用程序中使用代码(Ruby on Rails Omniauth)

Posted

技术标签:

【中文标题】如何注销 Facebook - 在 Rails 应用程序中使用代码(Ruby on Rails Omniauth)【英文标题】:How to logout facebook - using code in rails application (Ruby on Rails Omniauth) 【发布时间】:2012-09-16 14:24:36 【问题描述】:

我尝试通过 rails 中的 omniauth 从我的页面添加多个 twitter 和 facebook 帐户。

Twitter 使用 force_login 参数可以正常工作。

但是,facebook 不支持这个。

我只能使用/auth/facebook 添加一个 Facebook 帐户。在我尝试使用/auth/facebook 路径添加新的 Facebook 帐户后,它只返回到我的主页。

如果我在同一浏览器中浏览 www.facebook.com,则登录页面不会出现。最后添加的 facebook 帐户页面正在打开。

当我在浏览器中从 facebook 注销时,我尝试了 /auth/facebook 路径。它工作正常。

所以, 在我点击在我的页面中添加 facebook 链接之前,需要注销已经在浏览器选项卡中打开的 facebook 帐户。

有人可以帮忙吗? 谢谢。

【问题讨论】:

【参考方案1】:

观看这个有灵魂的截屏视频

http://railscasts.com/episodes/360-facebook-authentication

【讨论】:

【参考方案2】:

默认情况下,您不能在一个浏览器中登录多个 facebook 帐户,除非您有一种方法可以触发浏览器(例如私人浏览-mozilla、隐身窗口-chrome)让您的用户登录。网站使用 cookie 来跟踪他们的状态.

不过,facebook 确实提供 auth_type=reauthenticate。 文档在这里。 https://developers.facebook.com/docs/howtos/login/client-side-re-auth/

如果我错了,请纠正我。

【讨论】:

谢谢。但在我的应用程序中,多个用户可以使用 facebook 帐户登录。已经添加了 facebook cookie,不允许我打开新的 facebook 登录页面。例如认为浏览中心。有多个人可以使用单个浏览器。想想那个条件。

以上是关于如何注销 Facebook - 在 Rails 应用程序中使用代码(Ruby on Rails Omniauth)的主要内容,如果未能解决你的问题,请参考以下文章

Ajax PUT 请求导致 Rails 应用程序注销。为啥?

与 Facebook iOS SDK 共享后从 Facebook 注销

如何在我的网站中从 Facebook 注销

如何在 iPhone 上从 Facebook 注销(本机/集成)

如何在不使用 Facebook 登录/注销按钮的情况下以编程方式从 Facebook SDK 3.0 注销?

如何在 UITableViewCell 中快速创建 facebook 注销按钮