在java中,通過程序發送QQ郵件時,報:javax.mail.AuthenticationFailedException
這是身份認證的錯誤,這個時候,需要從以下兩方面著手:
一、檢查QQ郵箱或者別的郵箱是否開通了pop3/smtp服務,這個錯誤是認證失敗,所以很有可能是沒有開通pop3/smtp服務,我在這里犯了兩個錯誤,一是mail.passWord寫的是郵箱登錄密碼,應該寫為開通pop3/smtp服務時的驗證碼;二是沒有開通pop3/smtp服務
final PRoperties props = new Properties(); props.put("mail.smtp.auth", "true"); props.put("mail.smtp.host", "smtp.qq.com"); //你自己的郵箱 props.put("mail.user", "xxxxxxx@qq.com"); //你開啟pop3/smtp時的驗證碼 props.put("mail.password", "xxxxx"); props.put("mail.smtp.port", "25"); props.put("mail.smtp.starttls.enable", "true");二、在用戶名、密碼都沒有問題以及pop3/smtp服務也開通的情況下,還是報這個錯誤,先登錄一下郵箱,測試是否能正常發送郵件。有時候郵箱發送郵件過于頻繁,可能被網站認為是惡意軟件攻擊,這個時候就需要定期去他們的網站登錄一下,處理一下
三、還要注意一點,配置的時候一定要有:mail.smtp.auth=true
新聞熱點
疑難解答