golang调试发送163邮件

背景:从其他换成163邮箱了,使用以前的配置会报错。

在网上找到了域名是mai.qiye.163.com,端口是465,报错如下:

Error: dial tcp xxx connect: connection timed out

经查找163的文档发现是域名不对,正确的域名需要在163文档中心查询,查询域名地址:https://qy.163.com/help/client-profile.html

域名换成smtphz.qiye.163.com后报错如下:

Error: 535 5.7.0 ERR.LOGIN.REQCODE

经查找需要在163邮箱的设置里开通IMAP/SMTP协议服务,并生成授权码。

得到授权码后还是的报以上错误,这时我想起在设置授权码的时候有个客户端名称选项,我当时输入的是ABC,于是我就把用户名换成了刚设置的名称ABC,密码是授权码,又报错了,报错如下:

535 5.7.0 ERR.ILLEGAL.EMAIL

经查以为是邮件的格式不正确,把发送邮件的内容换成测试两个字,发现报错还是如此,几经折腾还是不行,于是又把用户名换成邮箱名,报错回到了第二个LOGIN.REQCODE,于是我仔细读取了以前的代码,发现配置密码时进行了BASE64编码,去掉编码,直接填写上授权码,邮件就成功发送了。

当提示账号和密码不正确时,除了检查账号密码是否正确外,还要检查用户名和密码是否被编码。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容