ruby-on-rails - Ruby on Rails 获取正文消息 IMAP

标签 ruby-on-rails ruby email imap

我目前正在开发 Mail 应用程序,该应用程序可以发送电子邮件并拥有收件箱。

所以,我遵循这个 guide .

imap = Net::IMAP.new('mail.example.com')
imap.authenticate('LOGIN', 'joe_user', 'joes_password')
imap.examine('INBOX')
imap.search(["RECENT"]).each do |message_id|
  envelope = imap.fetch(message_id, "ENVELOPE")[0].attr["ENVELOPE"]
  puts "#{envelope.from[0].name}: \t#{envelope.subject}"
end

但是,我无法获取电子邮件的内容。我找不到任何保留电子邮件内容的变量。有人可以帮我吗?谢谢。

最佳答案

如此处所述imap mail,以下内容适用于我的 gmail

require 'net/imap'

imap = Net::IMAP.new("imap.gmail.com", 993, usessl = true)

  imap.login("username", "password")
  imap.examine('INBOX')
  imap.search(["ALL"]).each do |message_id|
    env = imap.fetch(message_id, "ENVELOPE")[0].attr["ENVELOPE"]
    raw_message = imap.fetch(message_id,'RFC822').first.attr['RFC822']
    puts "#{env.from[0].name}: \t#{env.subject}"
    puts "raw message: #{raw_message}"
  end

关于ruby-on-rails - Ruby on Rails 获取正文消息 IMAP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48473130/

相关文章:

ruby-on-rails - Rails delay_job以HTML格式发送电子邮件

ruby-on-rails - 使用 Ruby on Rails (1.4GB) 解析非常大的 XML 文件——有没有比 SAXParser 更好的方法?

ruby-on-rails - 重命名 Rails 中的表

ruby-on-rails - Rails 4 - 语法错误,意外的 tIDENTIFIER,期望输入结束

ios - 用于游戏开发的 RubyMotion

ruby-on-rails - Ruby on Rails - 如何正确映射和链接到新 Controller ?

PhpMailer:加载一段时间然后 ERR_EMPTY_RESPONSE

HTML 电子邮件 : making it work both in Outlook and on mobile

ruby-on-rails - twitter-bootstrap-rails 基本字体大小和行高

mysql - 在 Rails 查询中使用 AND 和 OR 进行过滤