如何使用Rails3中的oauth连接到Gmail的IMAP服务器?

时间:2010-09-21 18:11:57

标签: oauth ruby-on-rails-3 gmail imap oauth-ruby

我找到了gmail_xoauth gem,它完成了我需要的大部分工作,但我还需要从Rails3内部生成oauth标记(consumer_key和consumer_secret)。

我正在尝试将Gmail的oauth集成集成到我的网站中,因此无法使用上述gem所引用的python脚本。我希望我的网站将用户带到身份验证页面并提取consumer_key / secret令牌。

我是OAuth的新手,所以也许有一些我不知道的东西。

更新:我解决了上述问题,并撰写了一篇博文,内容详细(因为它太大而不适合这里)。 http://blog.asif.in/blog/2012/03/03/google-oauth-and-rails/

2 个答案:

答案 0 :(得分:2)

您可能需要查看OmniAuth。它是一个gem,它封装/抽象了OAuth必须完成的许多底层协议工作,以及OpenID和LDAP等其他身份验证/授权协议。我不太了解Google发送/接收电子邮件的API,但认证是第一步。

OmniAuth wiki在OpenID和Google Apps上使用它时非常好tutorial,尽管这可能与您在IMAP上寻找的不同。您可能需要为OmniAuth编写自己的提供程序(一个好的tutorial,描述这是可用的)。 Google还提供reference site来通过IMAP和OAuth进行身份验证/授权。与您最相关的部分很可能是页面detailing the protocol

希望有所帮助!

答案 1 :(得分:0)

我不打算为你写完整的代码,但你知道PHP吗?您可以查看此示例的工作方式:

http://googlecodesamples.com/docs/php/Docs.php

...然后在Ruby中做类似的东西。

这是来自以下网站的Google代码示例:

http://googlecodesamples.com/