2

我正在使用来自https://github.com/mikel/mailmail的gem

我用它来解析原始邮件数据:例如

require 'mail'

maildata = Mail.new(body) #where body is the raw text of an email message

#from there I can see info such as
p maildata.body.decoded #displays the decoded email body
p maildata.from #shows who the email is from

我如何确定电子邮件是否存在plaintexthtml是否有内置方法来执行此操作?

4

1 回答 1

2

你可以看看maildata.content_type

maildata.content_type
#=> "text/plain; charset=us-ascii"

如果它是多部分电子邮件,您可以同时拥有纯文本和 HTML。然后,您可以查看该parts数组以查看它包含哪些内容类型:

maildata.content_type
#=> "multipart/alternative; boundary=\"--==_mimepart_4f848491e618f_7e4b6c1f3849940\"; charset=utf-8"

maildata.parts.collect { |part| part.content_type }
#=> ["text/plain; charset=utf-8", "text/html; charset=utf-8"]
于 2012-04-10T19:11:51.957 回答