Каждая вставка имеет свой собственный тип MIME
Каждая часть многочастной электронной почты имеет свой собственный тип MIME. Таким образом, хотя тип содержимого электронной почты «multipart/mixed», каждое вложение имеет свой собственный тип MIME (текст, HTML и т. Д.).
Вот пример многочастное письмо от MIME and HTML in Email Дуг Steinwand:
To: [email protected]
Subject: MIME test
Content-type: multipart/mixed; boundary="theBoundaryString"
--theBoundaryString
Plain text message goes in this part. Notice that it
has a blank line before it starts, meaning that this
part has no additional headers.
--theBoundaryString
Content-Type: text/html
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
Content-Base: "http://somewebsite.com/"
<body><font size=4>This</font> is a
<i>test</i>.
--theBoundaryString--
Здесь вы можете увидеть, что прикрепление текста не имеет никакого явного типа содержимого. Когда вложение не имеет определенного типа содержимого, это US ASCII TEXT. Вложение HTML имеет тип контента «text/html». Могут быть другие вложения, каждый со своим типом MIME.
Рассмотрим с помощью «почты» Gem
mail камень делает отправки и разбора нескольких частей электронной почты очень легко. Он стабилен, хорошо поддерживается и широко используется.
Этого пример из его README показывает, как отправить многосекционную почту с текстовой частью и HTML части:
mail = Mail.deliver do
to '[email protected]'
from 'Mikel Lindsaar <[email protected]>'
subject 'First multipart email sent with Mail'
text_part do
body 'This is plain text'
end
html_part do
content_type 'text/html; charset=UTF-8'
body '<h1>This is HTML</h1>'
end
end
Когда я добавить вложение к этому, как «add_file csv_file» только показывает крепежную в почтовом клиенте, нет обычного текста или html. Когда я удаляю html и текстовые части и просто делаю тело «здесь», он правильно отображает текст и вложение. Идеи? – Micah
Это действительно правильно отображается в gmail, но не в Apple Mail. Я думаю, что ошибка зарегистрирована здесь: https://github.com/mikel/mail/issues/590. Я смотрю. – Micah