我有 2 個(gè)電子郵件地址,我想將所有郵件從一個(gè)電子郵件地址路由(自動(dòng)轉(zhuǎn)發(fā))到另一個(gè)電子郵件地址。不幸的是,我的郵件客戶(hù)端上的這個(gè)功能停止工作了,我想創(chuàng)建一個(gè)小型控制臺(tái)應(yīng)用程序來(lái)檢查我的電子郵件并每 10 分鐘自動(dòng)轉(zhuǎn)發(fā)一次。我開(kāi)始使用 Java Mail API 在 Java 中開(kāi)發(fā)控制臺(tái)應(yīng)用程序,但我在設(shè)置適當(dāng)?shù)?FROM 標(biāo)頭時(shí)遇到了問(wèn)題。當(dāng)我設(shè)置原始發(fā)件人電子郵件地址并嘗試發(fā)送電子郵件時(shí),SMTP 拋出異常:SMTP mail FROM does not match authenticated user name。它合乎邏輯,因?yàn)檫@樣我可以偽造電子郵件地址發(fā)件人,但我不希望電子郵件像我發(fā)送的那樣出現(xiàn)在另一封電子郵件中。出于多種原因需要這樣做:更容易閱讀當(dāng)我想回復(fù)電子郵件時(shí),我希望能夠回復(fù)我的原始發(fā)件人而不是我自己我已經(jīng)使用 PHP 在我的網(wǎng)站聯(lián)系表單上實(shí)現(xiàn)了這一點(diǎn),但我不知道如何在 Java 中做到這一點(diǎn)。我將嘗試以更簡(jiǎn)單的方式解釋情況。我提出了 2 封電子郵件:a@a.com和b@b.com現(xiàn)在電子郵件來(lái)自c@c.com于a@a.com我想將電子郵件從轉(zhuǎn)發(fā)a@a.com到b@b.com,但是當(dāng)郵件到達(dá)b@b.comFROM 標(biāo)頭時(shí),我想看到它來(lái)自c@c.com(不是來(lái)自a@a.com)我的問(wèn)題是:這是否可能,如果可能,我如何將標(biāo)頭 FROM 設(shè)置為原始發(fā)件人。
1 回答

慕碼人2483693
TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超9個(gè)贊
這完全取決于您的郵件服務(wù)器是否允許您向 b@b.com 發(fā)送郵件而不顯示它來(lái)自 a@a.com。大多數(shù)服務(wù)器不允許這樣做。
更簡(jiǎn)單的解決方案是從 a@a.com 的收件箱中讀取消息,并使用 Folder.appendMessages 將其附加到 b@b.com 的收件箱中,而不是使用 Transport.sendMessage 重新發(fā)送。
添加回答
舉報(bào)
0/150
提交
取消