MVP2000 發問時間: 電腦與網際網路程式設計 · 1 0 年前

JMail 可以不要設自己的帳號寄出去嗎?

再寫JSP裡面寫

<%

InternetAddress[] address = null;

request.setCharacterEncoding("big5");

String mailserver = "http://mail.yahoo.com";/

String From = "*****2000@ami.org.tw";

String to = "*****000.yahoo.com.tw";

String Subject = "Test1";

String messageText = "Test1 content";

boolean sessionDebug = false;

try {

java.util.Properties props = System.getProperties();

//設定 mail 主機

props.put("mail.host",mailserver);

//設定使用的協定

props.put("mail.transport.protocol","smtp");

//建立一個 mail session 物件

javax.mail.Session mailSession = javax.mail.Session.getDefaultInstance(props,null);

//設定除錯狀態

mailSession.setDebug(sessionDebug);

//建立一個訊息物件

Message msg = new MimeMessage(mailSession);

//設定送件者

msg.setFrom(new InternetAddress(From));

//轉換網址字串為InternetAddrss物件

address = InternetAddress.parse(to,false);

//設定送件者

msg.setRecipients(Message.RecipientType.TO, address);

//設定標題

msg.setSubject(Subject);

//設定送件日期

msg.setSentDate(new Date());

//設定信件內文

msg.setText(messageText);

Transport.send(msg);

out.println("success");

} catch (MessagingException mex) {

mex.printStackTrace();

}

%>

為什麼我再奇魔信箱 不管垃圾郵件還是一般郵件都沒收到

到底是為什麼阿? 有什麼原理跟問題阿?

已更新項目:

嗯 我有想過YAHOO會把我列為黑名單 ~ 一開始我猜想應該會送到垃圾信件 ~ 結果一開 ~ YAHOO都沒有 ~ 我也不知道 我有沒有發送成功

SMTP SERVER ~ 那麼代表我必須再架設一個 SMTP的伺服器了嗎?

可是我沒有固定IP ~ 架了有用嗎? 可以發送嗎?

2 個已更新項目:

我用的是中華電信

可是我有點不懂 ~ Simple Mail Transfer Protocol

納麼是我要去中華電信要她們的伺服器IP位置嗎?

2 個解答

評分
  • 1 0 年前
    最佳解答

    第一、你所輸入的並不是SMTP SERVER

    你若是使用HINET線路,您可以設成msa.hinet.net,若是其他線路,請查詢一下。

    第二、依據Yahoo的政策,一般的smtp server送信給他,他都會當成垃圾郵件的黑名單而拒絕收信。除非你是用大型的ISP的SMTP。這也是第一點要你改設成你線路提供者的SMTP。

    不清楚再問!

    2009-08-26 15:41:20 補充:

    您若是有能力架設一個mail server那當然好,雖然沒有固定IP,但是可以借用DDNS的服務。像no-ip之類的。

    你的線路提供者她們一定有SMTP服務,您可以查詢一下。因為你若是自己架設mail server自己發信,若寄給yahoo的mail,有85%的信還是進不去。所以,用ISP的SMTP最保險。

    2009-08-27 11:46:40 補充:

    Simple Mail Transfer Protocol就是SMTP。

    你直接打上msa.hinet.net,這個就是她們SMTP對外的代表號。

    我在第一次回答就提到囉。

    只要你是用它的線路,你就有權利使用她們的SMTP服務,而且不需要任何認證。

    2009-08-27 11:52:30 補充:

    補充一下:

    一般mail server本身基本上就有提供幾種服務:

    一是SMTP,負責幫你寄信(你要寄出的信)、收信(別人寄給你的信)。

    然而用戶端要收回他的郵件,就必須使用POP3服務。

    若是提供類似WEB MAIL服務,就必須用到IMAP服務。

    參考資料: IT路不是那麼好走的
  • ?
    Lv 4
    1 0 年前

    你執行這段code沒看到錯誤訊息嗎?

    yahoo的smtp是需要驗證的,你這段code根本沒有提供驗證的部份,

    再來,你的yahoo信箱是vip的嗎?是的話yahoo才有提供smtp的服務。

還有問題?馬上發問,尋求解答。