最近发邮件遇到问题。
主机godaddy 端口 25,80 都可以用
stmp服务器地址:smtpout.secureserver.net
不支持ssl 我就吧 EnableSsl 设置为false了
一切都没问题 之前发送也成功了。。。
ok,经过若干改动后 问题来了
报错
错误为:
System.net.mail.smtpException;服务器提交了协议冲突 服务器响应为:
你是不是在想 冒号 后面的 响应为???为什么?
好吧系统只负责报错没给出来啥。
查了一下 msdn
有个属性 叫 SmtpStatusCode
有个例子。。。如下。。。yes。。。。检查状态码。。。
try
{
client.Send(message);
}
catch (SmtpException e)
{
Console.WriteLine("Error: {0}", e.StatusCode);
}
finally
{
data.Dispose();
}
这样搞好之后 你就可以看到状态码鸟。。。
看了一下 e.StatusCode是GeneralFailure
解释是:事务未能发生。 当未能找到指定的 SMTP 主机时,会收到此错误。
有点摸不着头脑。。。
因为 我发件的邮件地址是自动生成的。。。。卧槽我检查了一下 ,把动态生成的用固定的代替。。。
发送成功了。
好的,问题出在账号生成的问题。。。
也就是说 发送 方的账号是错误的。。。
问题至此解决了。。。
总结:有时候问题往往发生在你最容易忽略的地方