你的位置:首页 > ASP.net教程

[ASP.net教程]Smpt命令顺序不正确。 服务器响应为: Error: need EHLO and AUTH first !


刚发现以前做的QQ邮箱发送邮件不能用了,查找了下原因:未加( EnableSsl  SSL加密连接 )导致的,顿时觉得很坑,以前QQ邮箱也没有这个限制啊,可能是最近加的。

好吧不多说直接从头走起,照顾下新人 O(∩_∩)O~

1、首先在QQ邮箱当中开启“POP3/SMTP服务”

2、获取“授权码”

  在上一步刚开通后也会提示出“授权码”,已开通的可以看下图。

3、编码

SmtpClient smtpClient = new SmtpClient();        

smtpClient.EnableSsl = true;        

smtpClient.UseDefaultCredentials = false;        

smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定电子邮件发送方式        

smtpClient.Host = smtpServer; //指定SMTP服务器        

smtpClient.Credentials = new System.Net.NetworkCredential(userFrom, userPassword);//用户名和授权码

 // 发送邮件设置        

MailMessage mailMessage = new MailMessage(userFrom, MailTo); // 发送人和收件人        

mailMessage.Subject = mailSubject;//主题        

mailMessage.Body = “内容”;        

mailMessage.BodyEncoding = Encoding.UTF8;//正文编码        

mailMessage.IsBodyHtml = true;//设置为HTML格式        

mailMessage.Priority = MailPriority.Low;//优先级

 注意:一定要先设置 EnableSsl和UseDefaultCredentials,再实例化Credentials