2
  1. 我有使用 oauth2 的要求(灵活)。(现有架构/代码)
    1. 我需要对订阅者的电子邮件标题进行一些文本操作。

我尝试过的解决方案。

我尝试下载 java 的示例代码,它正确连接到 gmail 的 imap 服务器。然而,它以 oath_version=1 响应并且需要密码。我试图按摩代码以将参数更改为其他api,例如他们的Contacts api oauth2,但没有成功。

问题:(多部分)

  1. Api 已关闭:http://code.google.com/googleapps/domain/email_migration/developers_guide_java.html 任何在线参考都是理想的(自上周星期三以来已关闭至少半周)。如果您想知道 - 是的,我确实在他们的论坛上发帖,然后在这里询问更新的链接。

  2. 有没有办法:a)发出oauth2请求和b)我能看到的任何(最小)代码示例都会很棒。

提前感谢您阅读这篇文章。

4

1 回答 1

0

这是一个使用 OAuth2 协议从 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​​ gemgmail_xoauthgem,因此您需要安装它们才能使此代码示例正常工作。我还使用omniauthand omniauth-google-oauth2gems 来处理用户登录和使用访问令牌。

于 2012-10-11T23:21:01.307 回答