我正在尝试通过IMAP协议获取新的传入邮件..我的示例代码是 -
task :receive_mail_new => :environment do
#require 'rubygems'
require 'net/imap'
imap = Net::IMAP.new('imap.gmail.com', 993, true,nil, false)
#imap.authenticate('LOGIN','debasish.industrify2016@gmail.com','****')
imap.login('test@example.com', '********')
imap.examine('INBOX')
imap.search(["RECENT"]).each do |id|
envelope = imap.fetch(id, "ENVELOPE")[0].attr["ENVELOPE"]
puts "#{envelope.from[0].name}: \t#{envelope.subject}"
end
imap.logout()
imap.disconnect()
end
问题在于
imap.search(["RECENT"]).each do |id|
此行未执行...我如何才能获取最近的邮件?可以帮助我
答案 0 :(得分:0)
猜测,RECENT
并不代表您的想法,请尝试使用UNSEEN
。 RECENT
表示"在您之前,没有人有机会看到此消息的主题。