Ruby 通过Gmail IMAP扩展访问线程ID(xoauth2)
我正试图在Rails应用程序中从Gmail获取消息id或线程id。我正在使用gmail_xOAuthgem和ruby中的标准net/imap。以下是我的一段经历:Ruby 通过Gmail IMAP扩展访问线程ID(xoauth2),ruby,api,gmail,imap,google-oauth,Ruby,Api,Gmail,Imap,Google Oauth,我正试图在Rails应用程序中从Gmail获取消息id或线程id。我正在使用gmail_xOAuthgem和ruby中的标准net/imap。以下是我的一段经历: require 'gmail_xoauth' imap = Net::IMAP.new('imap.gmail.com', 993, usessl = true, certs = nil, verify = false) imap.authenticate('XOAUTH2', user.email, user.token) imap
require 'gmail_xoauth'
imap = Net::IMAP.new('imap.gmail.com', 993, usessl = true, certs = nil, verify = false)
imap.authenticate('XOAUTH2', user.email, user.token)
imap.examine('[Gmail]/All Mail')
imap.search(["SINCE", "15-May-2014"]).each do |message_id|
puts imap.fetch(message_id, "(X-GM-THRID)")
end
Ruby的Net::IMAP抛出和异常“unknown attribute”,因此通过几次Google搜索,我在这里登陆:
我添加了他提到的小补丁,但是现在使用imap.fetchmessage_id,X-GM-THRID,我得到了另一个错误:
ArgumentError: wrong number of arguments (0 for 1)
我觉得我离得越来越近了,但我无法理解到底出了什么问题。感谢您的帮助
谢谢我用这个猴子补丁通过IMAP解决了这个问题-
尽管值得探索Gmail API,因为它现在容易多了-你解决过这个问题吗?嗨,Stefano,请看下面的答案。