• 1399/07/06

خطا در ارسال تایید ایمیل :

با سلام

زمانی که ثبت نام در سایت را انجام میدم و میخوام که تائیدی به ایمیل فرستاده بشه یک خطای زیر نشون میده.

یکی از راه حل ها تو سایت stack over flow  گفته که باید Less secure app  جیملتان را on کنید که این کار رو کردم ولی جواب نداد.

خطای که نمایش میدهد.

The SMTP server requires a secure connection or the client was not authenticated. The server response

was: 5.7.0 Authentication Required. Learn more at

که در قسمت منبع خطا، این خطا را نشان میدهد.

Source Error:

Line 158: await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking this link: <a href=\"" + callbackUrl + "\">link</a>");

کدی که در کلاس EmailService  است.

   public class EmailService : IIdentityMessageService

   {

       public Task SendAsync(IdentityMessage message)

       {  

           MailMessage mail = new MailMessage();

           SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");

           mail.From = new MailAddress("Example@gmail.com", "گروه برنامه نویسیان");

           mail.To.Add(message.Destination);

           mail.Subject = message.Subject;

           mail.Body = message.Body;

           mail.IsBodyHtml = true;

             

           // System.Net.Mail.Attachment attachment;

           // attachment = new System.Net.Mail.Attachment("c:/textfile.txt");

           // mail.Attachments.Add(attachment);

             

           SmtpServer.Port = 587;

           SmtpServer.UseDefaultCredentials = true ;

           SmtpServer.Credentials = new System.Net.NetworkCredential("Example@gm		ail.com", "password");

           SmtpServer.EnableSsl = true;



           //SmtpServer.Send(mail);

           return SmtpServer.SendMailAsync(mail);



           //return Task.FromResult(0);

           

       }  

   }

 

میتودی که در کنترولر Account مربوط به تائیدی ایمیل است و Source Error  که به آن اشاره میکند در خط await UserManager است.



public async Task<ActionResult> Register(RegisterViewModel model)

       {

           if (ModelState.IsValid)

           {

               var user = new ApplicationUser { UserName = model.Email, Email = mo		del.Email };

               var result = await UserManager.CreateAsync(user, model.Password);

               if (result.Succeeded)

               {

                   var code = await UserManager.GenerateEmailConfirmationTokenAsy		nc(user.Id);

                   var callbackUrl = Url.Action("ConfirmEmail", "Account", new { u		serId = user.Id, code = code }, protocol: Request.Url.Scheme);

                   await UserManager.SendEmailAsync(user.Id, "Confirm your accoun		t", "Please confirm your account by clicking this link: <a href		=\"" + callbackUrl + "\">link</a>");

                   ViewBag.Link = callbackUrl;

                   return View("DisplayEmail");

               }

               AddErrors(result);

           }



           // If we got this far, something failed, redisplay form

           return View(model);

       }
  • 1399/07/06
  • ساعت 14:15

سلام 

این ارور احراز هویت جیمیل هست 

متن خطا رو سرچ کنید و راه حل ها رو دنبال کنید 


  • 1399/07/06
  • ساعت 20:11

با تشکر از جواب دندان شکن استاد عزیز، مجبور شدم دوباره  خط به خط کدهای صفحه رو چک کنم که فهمیدم مقدار پسورد را اشتباه وارد کردم و این خطا مربوط به وارد کردن مقدار اشتباه در پسورد بوده، بازم ممنون استاد 


logo-enamadlogo-samandehi