我在将使用 Net::IMAP
库获取的电子邮件传递给使用 mikel/mail
gem 定义的 Mail
对象时遇到问题。
我收到邮件:
data = imap.uid_fetch(1, "BODY[]")
但是我以后应该如何将它放入 Mail.read 约定中呢?
mail = Mail.read(data.to_s)
似乎得到 Errno::ENAMETOOLONG: File name too long
。它将邮件正文理解为文件名。
有什么想法吗?
最佳答案
Mail.read
需要一个文件名。使用 Mail.new
从电子邮件源初始化一个 Mail
对象。
此外,获取 RFC822
,而不是 BODY[]
。
mail = Mail.new(imap.uid_fetch(1, "RFC822")[0].attr["RFC822"])
关于ruby - 将 Net::IMAP 电子邮件写入 mikel/mail 电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5904110/