use*_*401 4 c# email sendmail yandex
我尝试使用 C# 和 yandex 发送邮件,但出现错误:
错误 5.5.4 错误:先发送 AUTH 命令
这是我的代码。我尝试使用不同的端口(587、465 ..)和 SMTP 主机(smtp.yandex.com.tr、smtp.yandex.com、smtp.yandex.ru...),但所有尝试都出现相同的错误。
SmtpClient sc = new SmtpClient("smtp.yandex.com.tr", 587);
//sc.Port = 587;
//sc.Host = "smtp.yandex.com";
sc.EnableSsl = false;
sc.Credentials = new System.Net.NetworkCredential(System.Configuration.ConfigurationManager.AppSettings["Email"].ToString(),
System.Configuration.ConfigurationManager.AppSettings["Sifre"].ToString());
sc.UseDefaultCredentials = false;
sc.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
Run Code Online (Sandbox Code Playgroud)
sc.Credentials = new System.Net.NetworkCredential()调用后必须设置sc.UseDefaultCredentials = false;
UseDefaultCredentials = false将重置Credentials为null
尝试将线路顺序切换为:
sc.UseDefaultCredentials = false;
sc.Credentials = new System.Net.NetworkCredential(System.Configuration.ConfigurationManager.AppSettings["Email"].ToString(),
System.Configuration.ConfigurationManager.AppSettings["Sifre"].ToString());
Run Code Online (Sandbox Code Playgroud)
smtp.yandex.ru 也有效设置:
smtpUserName=""
enableSsl="true"
smtpPassword=""
smtpAuthentication="Basic"
smtpServer="smtp.yandex.ru"
smtpPort="465"
Run Code Online (Sandbox Code Playgroud)
小智 5
我有同样的错误,我通过在 mail.yandex.com(在电子邮件帐户中)进行一些设置来纠正它
要解决这个问题; - 输入邮件地址(mail.yandex.com) - 设置 - 其他电子邮件应用程序 - 设置选定的 POP3 设置就是这样。
注意:我使用了 587 端口和 smtp.yandex.com.tr 主机。
祝你今天过得愉快 :)
Yandex Mail 不支持没有 SSL 的连接(根据https://yandex.com/support/mail/mail-clients.xml)。尝试设置EnableSsl为 true 并使用主机:smtp.yandex.com,端口:465。如果不起作用 - 尝试端口 25