2011-02-15 134 views
0

作为Rails的相对新手,我不确定如何解决这个问题。我正在寻找在我正在开发的练习网站上添加基本的“使用Facebook登录”功能。我被困在两条战线:通过Rails登录Facebook

  1. 与Facebook打交道的大多数Rails插件似乎过时或记录不全。我遇到了Facebooker(似乎已经离开了我所看到的)和Mini_FB(更新,但很少的文档)。我试图安装Mini_FB,但我对使用Gems仍然很陌​​生。我跑gem install mini_fb,然后bundle install,并最终将gem 'mini_fb'添加到我的Gemfile,但我的服务器抱怨no such file to load错误。 是否有任何其他必要步骤允许您的应用使用宝石?

  2. 我对“登录Facebook”功能如何从整体鸟瞰视图工作感到困惑。我知道我的App ID已被传递到登录功能中,并且最终获得访问令牌(在使用我的App Secret密钥和授权码重新提交之后)。 但是,它如何与Rails站点上的某种用户系统集成?由于此访问代码不会永远持续,因此我是否需要定期更新它?这是通过简单地等待从Graph请求中捕获访问令牌错误并重做整个授权过程来完成的?

回答

3

您试过OmniAuth

它支持许多外部提供商,包括Facebook。

也有一些railscasts它的使用。

+0

OmniAuth似乎提供了通用的OAuth身份验证 - 这可能正是我所需要的 - 但我根本不明白通过他们的Facebook帐户验证用户的流程。当然,我可以循序渐进,但在处理用户帐户安全性问题时,我想了解我在做什么。同样,Railcasts似乎涉及通过设计使用OAuth,而我并未使用这种设计。通过Facebook功能登录有什么?我找不到任何东西 – 2011-02-16 18:38:31

1

在您的应用程序上安装gem的正确顺序是先将它添加到您的Gemfile.rb中,然后在控制台上运行bundle install。这就是说,OmniAuth可能是你最好的路径