-1
我正在使用smtp客戶端發送電子郵件,但問題是,當我試圖從我的本地系統電子郵件發送成功發送電子郵件時,但我部署在服務器上比不發送電子郵件。這裏是我的代碼無法使用服務器上的SMTP發送電子郵件
try
{
MailMessage mail = new MailMessage();
mail.To.Add(receiver);
mail.From = new MailAddress("[email protected]");
mail.Subject = subject;
mail.Body = body;
mail.IsBodyHtml = true;
if (attachment != null)
{
mail.Attachments.Add(attachment);
}
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Credentials = new System.Net.NetworkCredential("[email protected]", "xxxxxx");
smtp.EnableSsl = true;
smtp.UseDefaultCredentials = false;
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.Port = 587;
smtp.Send(mail);
return true;
}
catch
{
return false;
}
您是否嘗試過在您的Google帳戶中啓用對安全性較低的應用的訪問權限? –
是的,它的啓用。 –
如果您可以使用相同的代碼從本地系統發送電子郵件,並且無法從服務器發送郵件,那麼問題似乎不在您的代碼中。問題可能在於如何調用服務器上的方法或服務器如何連接到Internet(可能是防火牆問題)。 –