使用场景,公司要用飞书邮箱做一个公共邮箱用来发送邮件,qq邮箱和163邮箱这种有对外授权码的很容易实现,但是遇到了飞书这种提供公众邮箱需要配置端口的时候,一直得不到transport的响应,弄了半天才找到原因,记录一下:
不多bb先上正确的配置:
在这里说一下,smtp协议的端口有俩种,465和25,分别是基于ssl加密协议以及普通的协议端口
如果配置spring java mail的端口是25,protocol必须是smtp,如果配置的端口是465,protocol必须是smtps
理由:如果不指定协议,java mail默认使用smtp,对应的Transport的ssl协议是关闭状态的
而只有SSLSMTPtransport对应的ssl是开启的
所以要用465端口必须开启ssl协议,也就是protocol必须是smtps
或者使用25端口,protocol指定为smtp或者不指定默认即是smtp
完毕。