【问题标题】:Google OpenID running example of Ruby code?Google OpenID 运行 Ruby 代码示例?
【发布时间】:2012-12-09 03:29:16
【问题描述】:

我浏览了很多关于 Google OpenID 身份验证的 Rails/Rails 示例,但没有一个能正常工作。它们中的大多数都不起作用,因为它们已经过时了。即使是omniauth也不是出于其他原因。

有没有人有一个现在可以正常工作的 Ruby Rack Web 应用程序的工作示例?

【问题讨论】:

    标签: ruby-on-rails ruby sinatra rack google-openid


    【解决方案1】:

    我会检查一下这个 Rails Cast,它应该可以帮助您在基于 Rails/Rack 的 Ruby 应用程序上启动并运行 On Open ID 和 omniauth

    http://railscasts.com/episodes/304-omniauth-identity

    顺便说一句,如果你打算进行 Rails 开发,Railscast 是一个很好的信息来源。

    【讨论】:

    • 我只需要Google OpenID认证示例。
    • 嗯,那个特定的屏幕播放节目,推特,脸书和谷歌。因此,您可以删除其他提供者的注释并仅使用该提供者。如果您需要代码示例,请告诉我,今天晚些时候我可以创建一个快速应用程序
    • 您确定它使用的是 Google OpenID 而不是 Google oAuth?
    【解决方案2】:

    我前一阵子分叉了一个,并在 GitHub 上弹出了它,名为 rails3-mongoid-omniauth

    它允许您使用多种方法进行身份验证。可证明它在带有 Rails 3.0.x 的 Heroku 上的 Bamboo 堆栈上运行。我还没有更新它,但它应该给你一些见解。

    一些关键文件是:

    • omniauth.rb 声明提供程序的位置。它还包括一个修复LinkedIn提供程序的monkeypatch,尽管我怀疑它现在已经修复了。
    • routes.rb 为每个身份验证提供程序定义了到此应用程序的路由。这是omniauth 发送给提供者的回调URL。
    • application_controller.rb 其中 current_user 是根据会话密钥定义的。
    • sessions_controller.rb 会话是根据身份验证提供商(例如 Google)的授权创建的
    • _navigation.html.erb 登录链接将您带到身份验证提供程序。

    现在我做了更多的研究,看起来http://railsapps.github.com/tutorial-rails-mongoid-omniauth.html 也有一个教程。

    【讨论】:

    • 是的。它适用于 Google、Yahoo、Twitter、Facebook、LinkedIn 和 Github。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-08
    • 2017-01-26
    • 2015-04-23
    • 1970-01-01
    相关资源
    最近更新 更多