使用 Gmail SMTP OAUTH 从 asp.net 发送电子邮件 [重复]

Posted

技术标签:

【中文标题】使用 Gmail SMTP OAUTH 从 asp.net 发送电子邮件 [重复]【英文标题】:Sending email from asp.net using Gmail SMTP OAUTH [duplicate] 【发布时间】:2017-06-21 17:10:42 【问题描述】:

我只想实现一个示例邮件发送应用程序。 我为此做了很多研究。从各个角落我都得到了同样的解决方案。但这对我不起作用。我找不到我的错误。我正在使用下面的代码

protected void SendEmail(object sender, EventArgs e)

    string to = txtTo.Text;
    string from = txtEmail.Text;
    string subject = txtSubject.Text;
    string body = txtBody.Text;
    using (MailMessage mm = new MailMessage(txtEmail.Text, txtTo.Text))
    
        mm.Subject = txtSubject.Text;
        mm.Body = txtBody.Text;
        if (fuAttachment.HasFile)
        
            string FileName = Path.GetFileName(fuAttachment.PostedFile.FileName);
            mm.Attachments.Add(new Attachment(fuAttachment.PostedFile.InputStream, FileName));
        
        mm.IsBodyhtml = false;
        SmtpClient smtp = new SmtpClient();
        smtp.Host = "smtp.gmail.com";
        smtp.EnableSsl = true;
        NetworkCredential NetworkCred = new NetworkCredential(txtEmail.Text, txtPassword.Text);
        smtp.UseDefaultCredentials = true;
        smtp.Credentials = NetworkCred;
        smtp.Port = 587;
        smtp.Send(mm);
        ClientScript.RegisterStartupScript(GetType(), "alert", "alert('Email sent.');", true);
    

得到如下异常

请建议我如何解决这个问题。

提前致谢。

【问题讨论】:

通过关闭我的 gmail 帐户中的“不太安全的应用程序”选项来尝试提出的解决方案,它给出了与我上面提到的相同的异常。 【参考方案1】:

假设您使用正确的 Gmail 凭据来发送电子邮件。您需要使用以下链接打开“不太安全的应用程序”设置:https://www.google.com/settings/u/1/security/lesssecureapps

【讨论】:

感谢您的建议。是的,它工作正常。但我还有一个疑问,打开不太安全的应用程序选项会不会导致任何安全问题。现在是安全的吗? 它不会引发任何安全问题。还有一种方法,你可以在 Gmail 中创建 App 并使用该 App 发送电子邮件。 您能提出您的建议吗? 查看此链接emailarchitect.net/easendmail/sdk/html/object_oauth.htm如果您有任何进一步的疑问,请告诉我

以上是关于使用 Gmail SMTP OAUTH 从 asp.net 发送电子邮件 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 gmail api 使用 nodemailer smtp oauth2?收到错误 535:不接受用户和通行证

如何在 C# 中使用带有服务帐户的 gmail api 或 google Oauth 来发送邮件?

问题通过 SMTP 发送邮件

对 Gmail API 使用 oauth 令牌的疑问

如何使用带有 OAuth 令牌的 Asp.Net MVC 中的 gmail API 更快地获取日期明智的电子邮件

Gmail SMTP,客户端-> 服务器:AUTH XOAUTH2,SMTP 错误:AUTH 命令失败:334