【发布时间】:2014-07-04 16:52:16
【问题描述】:
我正在尝试在我的 Rails 应用程序中从 Gmail 中获取消息 ID 或线程 ID。我正在使用 gmail_xoauth gem (https://github.com/nfo/gmail_xoauth) 和 ruby 中的标准 net/imap。这是我所拥有的sn-p:
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 抛出异常(“未知属性”),所以通过几次 Google 搜索,我找到了这里:http://blog.wojt.eu/post/13496746332/retrieving-gmail-thread-ids-with-ruby
我添加了他提到的小补丁,但现在使用 imap.fetch(message_id, "(X-GM-THRID)"),我得到另一个错误:
ArgumentError: wrong number of arguments (0 for 1)
我觉得我已经接近了,但我无法解决问题所在。任何帮助表示赞赏。
谢谢
【问题讨论】:
-
你解决过这个问题吗?
-
您好 Stefano,请看下面的答案。
标签: ruby api gmail imap google-oauth