我正在開發一個PHP應用程序,需要從電子郵件服務器檢索任意電子郵件。然後,該消息被完全解析並存儲在數據庫中。發送郵件從測試目的
當然,我必須做很多測試,因爲這個任務對於太陽下的所有不同的郵件格式來說並不是很簡單。因此我開始「收集」來自某些客戶的不同內容的電子郵件。
我想要一個腳本,以便我可以將這些電子郵件自動發送到我的應用程序來測試郵件處理。
因此,我需要一種發送原始電子郵件的方式 - 以便結構與來自相應客戶端的結構完全相同。我有電子郵件存儲爲.eml文件。
有人知道如何通過提供原始的身體發送電子郵件嗎?
編輯: 更具體地說:我正在尋找一種通過使用它們的源代碼發送多部分電子郵件的方法。例如,我希望能夠使用類似的東西(一個電子郵件與普通和HTML部分,HTML部分有一個內聯附件)。
--Apple-Mail-159-396126150
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
The plain text email!
--=20
=20
=20
--Apple-Mail-159-396126150
Content-Type: multipart/related;
type="text/html";
boundary=Apple-Mail-160-396126150
--Apple-Mail-160-396126150
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
charset=iso-8859-1
<html><head>
<title>Daisies</title>=20
</head><body style=3D"background-attachment: initial; background-origin: =
initial; background-image: =
url(cid:4BFF075A-09D1-4118-9AE5-2DA8295BDF33/bg_pattern.jpg); =
background-position: 50% 0px; ">
[ - snip - the html email content ]
</body></html>=
--Apple-Mail-160-396126150
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename=bg_pattern.jpg
Content-Type: image/jpg;
x-apple-mail-type=stationery;
name="bg_pattern.jpg"
Content-Id: <4BFF075A-09D1-4118-9AE5-2DA8295BDF33/tbg.jpg>
/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAASAAA/+IFOElDQ19QUk9GSUxFAAEB
[ - snip - the image content ]
nU4IGsoTr47IczxmCMvPypi6XZOWKYz/AB42mcaD/9k=
--Apple-Mail-159-396126150--
你有沒有找到解決這個問題的辦法? – Johannes 2013-04-30 08:04:55
不,不幸的不是。 – hbit 2013-04-30 22:46:36
我認爲你錯過了主要部分,與標題標題,並與多部分,所以你的MTA會知道該怎麼做。因此你的.eml文件是不完整的。在多部分電子郵件中,根部分(缺少的部分)必須包含這樣的內容:「Content-Type:multipart/alternative; boundary =」____ = = _ MCPart_465790590「」。這將指定任何mimeparser至此首先閱讀,依此類推。 – 2014-05-21 11:14:27