0

我正在为我的应用程序进行 oauth 身份验证,并计划使用 Oauth2。有人可以判断 Gmail 是否支持通过 Oauth2 访问令牌获取收件箱。我看到可以通过 Oauth1 令牌执行此操作,但我发现 Google 现在已弃用 Oauth1 支持。

4

2 回答 2

2

不,现在只有 OAuth 1.0。

于 2012-07-12T04:13:16.440 回答
1

这是一个使用其 XOAUTH2 协议从 Google 获取电子邮件的有效 Ruby 示例:

imap = Net::IMAP.new('imap.gmail.com', 993, usessl = true, certs = nil, verify = false)
imap.authenticate('XOAUTH2', 'example@gmail.com', 'oauth2_access_token_goes_here')
imap.select('INBOX')
imap.search(['ALL']).each do |message_id|

    msg = imap.fetch(message_id,'RFC822')[0].attr['RFC822']
    mail = Mail.read_from_string msg

    puts mail.subject
    puts mail.text_part.body.to_s
    puts mail.html_part.body.to_s

end

注意:此示例使用rubymail​​ gem 和gmail_xoauthgem,因此您需要安装它们才能使此代码示例正常工作。

此外,此示例中未显示检索 OAuth2 访问令牌。这是一个使用 ruby​​ OmniAuth gem 的示例。

于 2012-10-11T23:18:23.570 回答