几个月前,做用户注册模块要用到发送邮件功能,也碰到了些或大或小的问题,现在总结一下:
我先贴出发送邮件用到的代码:
1,当初,我使用自己的126邮箱来发送邮件,在程序中,代码没变动。结果:总是失败。
网上查资料说是关闭了该项服务。只能使用02年以前注册的邮箱才可以。最终找到一个同事的邮箱用来发送邮件,
还是没改动代码,结果。成功了。
2 今天要改动点需求,又翻开代码,发现发送邮件失败。“邮件表头中找到无效字符”,郁闷了好一会儿,最终,想起自己改动过计算机名,
改成中文了,到网上一查资料,发现有人提到。原因是SmtpClient使用了计算机名作为smtp协议中HELO命令的参数,而在发送命令时又会对字符进行检查,若是非法字符则会抛出异常,很不幸中文字符都包括在内