Я хотел бы знать, как построить составное SMTP-сообщение в правильном порядке, чтобы оно правильно отображалось на почтовом клиенте iPhone (правильное отображение в GMail).
Я использую Javamail для создания электронной почты, содержащей следующие части:
- Часть тела с типом содержимого "text / html; UTF-8"
- Вложение вложенного изображения.
- Вложение файла
Я отправляю почту через SMTP GMail (через SSL), и почта отправляется и обрабатывается правильно с использованием учетной записи GMail, однако почта не отображается правильно на почтовом клиенте iPhone. В почтовом клиенте iPhone изображение отображается перед текстом «Перед изображением», после чего оно должно быть отображено позже. После текста «Перед изображением» есть значок со знаком вопроса (я полагаю, это означает, что он не может найти CID, на который ссылаются). Я не уверен, является ли это ограничением почтового клиента iPhone или ошибкой в моем коде отправки почты (я настоятельно предполагаю последний).
Я думаю, что, возможно, заголовки на моих частях могут быть неправильными или, возможно, я предоставляю мультипартии в неправильном порядке. Я включаю текст полученной почты как вывод gmail (который отображает файл correc
Message-ID: <3977333.1.1274154021787.JavaMail.Chris@smtp.gmail.com>
Subject: =?UTF-8?Q?Test_from_=E3=82=AF=E3=83=AA=E3=82=B9?=
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_Part_0_20870565.1274154021755"
------=_Part_0_20870565.1274154021755
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-ID: <20100518124021763_368238_0>
iVBORw0K ----- TRIMMED FOR CONCISENESS
6p1VVy4alAAAAABJRU5ErkJggg==
------=_Part_0_20870565.1274154021755
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit
<html><head><title>Employees Favourite Foods</title>
<style>
body { font: normal 8pt arial; }
th { font: bold 8pt arial; white-space: nowrap; }
td { font: normal 8pt arial; white-space: nowrap; }
</style></head><body>
Before Image<br><img src="cid:20100518124021763_368238_0">
After Image<br><table border="0">
<tr>
<th colspan="4">Employees Favourite Foods</th>
</tr>
<tr>
<th align="left">Name</th><th align="left">Age</th><th align="left">Tel.No</th><th align="left">Fav.Food</th>
</tr>
<tr style="background-color:#e0e0e0">
<td>Chris</td><td>34</td><td>555-123-4567</td><td>Pancakes</td>
</tr>
</table></body></html>
------=_Part_0_20870565.1274154021755
Content-Type: text/plain; charset=us-ascii; name=textfile.txt
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=textfile.txt
This is a textfile with numbers counting from one to ten beneath this line:
one
two
three
four
five
six
seven
eight
nine
ten(no trailing carriage return)
------=_Part_0_20870565.1274154021755--
Даже если вы не можете помочь мне с этим, я был бы признателен, если бы кто-либо из участников форума мог переслать мне (не личное) письмо, содержащее встроенные изображения (но не внешние гиперссылки). Мне просто нужно найти рабочий образец, и я смогу пройти мимо этого.
Спасибо
Крис.