SpringBoot開發案例之郵件發不出去了
- 2019 年 12 月 9 日
- 筆記
前言
純粹為了記錄,如果,恰巧與你遇到的是一個問題,可以通過以下方法解決你的問題,那麼對於你我來說都是一件非常開心的事情。
問題
內網IT部門給了一個郵箱賬號,不需要使用密碼就可以在內網發送郵件,當然只能發內部企業郵件,企鵝、163之類的是不可以的。
發送郵件用的 starter 版本如下,請對號入座:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> <version>1.5.10.RELEASE</version> </dependency>
郵件配置:
spring.mail.host=smtp.52itstyle.com [email protected] spring.mail.password= # 既然不需要密碼,設置為 false 即可 spring.mail.properties.mail.smtp.auth=flase spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.properties.mail.smtp.starttls.required=true
報錯:
Could not convert socket to TLS;
不能把socket解析為TLS,我們只需要把當前 smtp host 設為可信任即可。
# 這裡設置信任 spring.mail.properties.mail.smtp.ssl.trust=smtp.52itstyle.com
繼續報錯:
535 5.7.3 Authentication unsuccessful
最終配置:
spring.mail.host=smtp.52itstyle.com [email protected] # 內網發送把密碼去掉就可以 #spring.mail.password= spring.mail.properties.mail.smtp.auth=flase spring.mail.properties.mail.smtp.ssl.trust=smtp.52itstyle.com spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.properties.mail.smtp.starttls.required=true
小結
皆大歡喜