The SMTP Server requires a Secure Connection or the Client was not Authenticated. The server response was: 5.5.1 Authentication Required? #
I want to send an email from my application and i have written following code for sending mail
MailMessage msg = new MailMessage();
msg.From = new MailAddress(“mymailid”);
msg.To.Add(“receipientid”);
msg.Subject = “test”;
msg.Body = “Test Content”;
msg.Priority = MailPriority.High;
SmtpClient client = new SmtpClient();
client.Credentials = new NetworkCredential(“mymailid”, “mypassword”, “smtp.gmail.com”);
client.Host = “smtp.gmail.com”;
client.Port = 587;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.EnableSsl = true;
client.UseDefaultCredentials = true;
client.Send(msg);
I am running it on localhost so what mistake i am doing to send it.
When i send button it gives an error like
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required.
Code in Web.config file
<appSettings>
<add key=”webpages:Version” value=”2.0.0.0″ />
<add key=”webpages:Enabled” value=”false” />
<add key=”PreserveLoginUrl” value=”true” />
<add key=”ClientValidationEnabled” value=”true” />
<add key=”UnobtrusiveJavaScriptEnabled” value=”true” />
<add key=”smtpServer” value=”smtp.gmail.com” />
<add key=”EnableSsl” value = “true”/>
<add key=”smtpPort” value=”587″ />
<add key=”smtpUser” value=”sender@gmail.com” />
<add key=”smtpPass” value=”mypassword” />
<add key=”adminEmail” value=”sender@gmail.com” />
</appSettings>
<system.net>
<mailSettings>
<smtp from=”sender@gmail.com”>
<network host=”smtp.gmail.com” password=”mypassword” port=”587″ userName=”sender@gmail.com” enableSsl=”true”/>
</smtp>
</mailSettings>
</system.net>
what should i do to solve this error and send mail??
Solution 1: #
MailMessage msg = new MailMessage();
msg.From = new MailAddress(“mymailid@gmail.com”);
msg.To.Add(“receipientid@gmail.com”);
msg.Subject = “test”;
msg.Body = “Test Content”;
//msg.Priority = MailPriority.High;
using (SmtpClient client = new SmtpClient())
{
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential(“mymailid@gmail.com”, “mypassword”);
client.Host = “smtp.gmail.com”;
client.Port = 587;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Send(msg);
}
Solution 2: #
Dim emailTo As String = TxtEmail.Text.Trim()
If emailTo.Length > 10 Then
Try
Dim Smtp_Server As New SmtpClient
Dim e_mail As New MailMessage()
Smtp_Server.UseDefaultCredentials = False
Smtp_Server.Credentials = New Net.NetworkCredential(“myemail@gmail.com”, “***16-digit-code***”)
Smtp_Server.Port = 587
Smtp_Server.EnableSsl = True
Smtp_Server.Host = “smtp.gmail.com”
e_mail = New MailMessage()
e_mail.From = New MailAddress(“myemailaddress@gmail.com”)
e_mail.To.Add(emailTo)
e_mail.Subject = “Login OTP”
e_mail.IsBodyHtml = False
e_mail.Body = “some text here”
Smtp_Server.Send(e_mail)
MessageBox.Show(“Your login OTP has been sent to ” & emailTo)
LblOTPSuccess.Visible = True
TxtOTP.Visible = True
BtnVerifyOTP.Visible = True
TxtOTP.Focus()
Catch error_t As Exception
MessageBox.Show(error_t.ToString, “Error”, MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
Else
MessageBox.Show(“Email address is invalid or too short”, “Invalid Email”, MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
Solution 3: #
MailMessage mail = new MailMessage();
mail.From = new MailAddress(“xx@gmail.com”);
mail.Sender = new MailAddress(“xx@gmail.com”);
mail.To.Add(“external@emailaddress”);
mail.IsBodyHtml = true;
mail.Subject = “Email Sent”;
mail.Body = “Body content from”;
SmtpClient smtp = new SmtpClient(“smtp.gmail.com”, 587);
smtp.UseDefaultCredentials = false;
smtp.Credentials = new System.Net.NetworkCredential(“xx@gmail.com”, “xx”);
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.EnableSsl = true;
smtp.Timeout = 30000;
try
{
smtp.Send(mail);
}
catch (SmtpException e)
{
textBox1.Text= e.Message;
}
Solution 4: #
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient(“smtp.gmail.com”);
mail.From = new MailAddress(“fromaddress@gmail.com”);
mail.To.Add(“toaddress1@gmail.com”);
mail.To.Add(“toaddress2@gmail.com”);
mail.Subject = “Password Recovery “;
mail.Body += ” <html>”;
mail.Body += “<body>”;
mail.Body += “<table>”;
mail.Body += “<tr>”;
mail.Body += “<td>User Name : </td><td> HAi </td>”;
mail.Body += “</tr>”;
mail.Body += “<tr>”;
mail.Body += “<td>Password : </td><td>aaaaaaaaaa</td>”;
mail.Body += “</tr>”;
mail.Body += “</table>”;
mail.Body += “</body>”;
mail.Body += “</html>”;
mail.IsBodyHtml = true;
SmtpServer.Port = 587;
SmtpServer.Credentials = new System.Net.NetworkCredential(“sendfrommailaddress.com”, “password”);
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);