首页 >后端开发 >C++ >为什么我的.NET GMAIL SMTP电子邮件发送代码工作?

为什么我的.NET GMAIL SMTP电子邮件发送代码工作?

Barbara Streisand
Barbara Streisand原创
2025-01-31 19:26:12395浏览

>故障排除.NET GMAIL SMTP电子邮件发送问题

Why Isn't My .NET Gmail SMTP Email Sending Code Working?

许多开发人员使用.NET通过Gmail的SMTP服务器发送电子邮件。 本指南提供解决方案和工作代码示例。

>

>常见错误:“ SMTP服务器需要安全的连接或客户端未经身份验证。”

>

此错误表明您的Gmail SMTP服务器需要身份验证和安全的连接。>

工作代码示例:

此C#代码段演示了通过Gmail的SMTP服务器发送成功的电子邮件:

<code class="language-csharp">using System;
using System.Net;
using System.Net.Mail;

namespace EmailSender
{
    class Program
    {
        static void Main(string[] args)
        {
            // Configure SMTP client
            var client = new SmtpClient("smtp.gmail.com", 587)
            {
                Credentials = new NetworkCredential("[your_email@gmail.com]", "[your_password]"),
                EnableSsl = true
            };

            // Create email message
            var message = new MailMessage
            {
                From = new MailAddress("[your_email@gmail.com]"),
                To = { new MailAddress("[recipient_email@example.com]") },
                Subject = "Test Email",
                Body = "Test email body"
            };

            // Send email
            try
            {
                client.Send(message);
                Console.WriteLine("Email sent successfully!");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error sending email: {ex.Message}");
            }

            Console.ReadLine();
        }
    }
}</code>

重要说明(2021及以后):> 为了使此代码正常运行,您必须必须在Gmail安全设置中启用“较不安全的应用程序”访问权限。 可以在

> https://www.php.cn/link/380714D486FBD50C0C0C9DFC7E4D8BE9F7

中找到此设置。 此步骤对于防止诸如“ 5.5.1认证”之类的身份验证错误至关重要。 考虑使用应用程序密码来增强安全性而不是常规密码。 请记住,用您的实际凭据和收件人的电子邮件地址替换之类的占位符。 如果您继续遇到问题,请仔细检查您的Gmail设置,并确保您的防火墙不会阻止发出的SMTP连接。

>

以上是为什么我的.NET GMAIL SMTP电子邮件发送代码工作?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn