1 回答

TA貢獻1859條經驗 獲得超6個贊
這段代碼至少有兩個問題:缺少空行來分隔 MIME 標題和正文,然后在末尾添加一些 MIME 邊界,即使這不是多部分郵件。當前創建的郵件如下所示:
From: [email protected]
Subject: test
MIME-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=test-filename
Y29sdW1uMSxjb2x1bW4yLGNvbHVtbjNcbkFBQSxCQkIsQ0NDXG5EREQsRUVFLEZGRlxu
--973d0754ef322150f1977af176c9e1917c6dea9dfa0390e8e99af038c086--
最后錯誤的邊界被解碼為base64,而像“-”這樣的無效base64字符被忽略。這會導致輸出結束時出現垃圾。
相反,它應該看起來像這樣作為一個單獨的部分。請注意缺少的(錯誤的)結束邊界,并注意 MIME 標頭和正文之間的空行。
From: [email protected]
Subject: test
MIME-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=test-filename
Y29sdW1uMSxjb2x1bW4yLGNvbHVtbjNcbkFBQSxCQkIsQ0NDXG5EREQsRUVFLEZGRlxu
或者,它應該作為多部分郵件完成,如下所示。請注意主 MIME 標頭中的不同 Content-Type。
From: [email protected]
Subject: test
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary=973d0754ef322150f1977af176c9e1917c6dea9dfa0390e8e99af038c086
--973d0754ef322150f1977af176c9e1917c6dea9dfa0390e8e99af038c086
Content-Type: text/plain
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=test-filename
Y29sdW1uMSxjb2x1bW4yLGNvbHVtbjNcbkFBQSxCQkIsQ0NDXG5EREQsRUVFLEZGRlxu
--973d0754ef322150f1977af176c9e1917c6dea9dfa0390e8e99af038c086--
- 1 回答
- 0 關注
- 135 瀏覽
添加回答
舉報