【问题标题】:Send an email without having to enable less secure apps in google无需在 Google 中启用安全性较低的应用即可发送电子邮件
【发布时间】:2020-02-24 07:00:06
【问题描述】:

我用 C# 制作了一个电子邮件程序,但是您必须在 google 中启用不太安全的应用程序。有没有解决的办法?如果不是,其他应用程序如何安全地发送电子邮件而不被归类为安全性较低的应用程序?

private void SendButton_Click(object sender, EventArgs e) {
       try {
           SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");

           mail.From = new MailAddress(myUsername);
           mail.To.Add(RecipientEmailBox.Text);
           mail.Subject = SubjectField.Text;
           mail.Body = MessageField.Text;

           SmtpServer.Port = 587;
           SmtpServer.Credentials = new 
           System.Net.NetworkCredential(myUsername, Login.password);
           SmtpServer.EnableSsl = true;

           SmtpServer.Send(mail);
           MessageBox.Show("Message Sent!");

       } catch (Exception ex) {
           MessageBox.Show(ex.ToString());
       }
}

我尝试研究解决此问题的方法,但找不到任何东西。

【问题讨论】:

  • 您可以使用不同的 SMTP 服务器,例如 Yahoo。他们可能不需要这一步。
  • 您能否建议您在哪里看到需要启用“不太安全的应用程序”?
  • @John 有一个谷歌设置允许不太安全的应用程序使用您的电子邮件进行身份验证。如果我不允许这样做,我会收到错误消息。
  • 看来您可以使用 OAuth 登录并将其用于 SMTP。见here。但是,我不确定这在 C# 中是如何工作的。
  • @John 我也不知道如何在 C# 中使用 OAuth 登录...

标签: c# smtp google-signin


【解决方案1】:

我认为这是answer 的问题。

您可以将 Google OAuth API 与 C# 一起使用。具体操作方法,请阅读指南。

【讨论】:

    猜你喜欢
    • 2022-06-11
    • 2019-11-27
    • 2017-07-22
    • 2020-04-17
    • 2018-05-03
    • 1970-01-01
    • 2022-08-17
    • 2014-10-10
    • 1970-01-01
    相关资源
    最近更新 更多