如何使用gmail从asp发送电子邮件? [复制]

Posted

技术标签:

【中文标题】如何使用gmail从asp发送电子邮件? [复制]【英文标题】:How to send e-mail from asp using gmail? [duplicate] 【发布时间】:2012-09-23 23:49:39 【问题描述】:

可能重复:Sending email in .NET through GmailHow do you send email from a Java app using Gmail?

我正在尝试从我的 asp 应用程序发送电子邮件警报。大多数人都说使用 SQL Server 的邮件功能发送电子邮件非常容易。但不幸的是,我目前正在运行 SQL Server 2008 Express 版本并且它没有邮件功能。请任何人帮助我使用 g-mail 发送电子邮件。

【问题讨论】:

它的 ASP。你是对的 强乐 【参考方案1】:

这可能会帮助您开始:

MailMessage myMessage = new MailMessage();
myMessage.Subject = "Subject";
myMessage.Body = mailBody;

myMessage.From = new MailAddress("FromEmailId", "Name");
myMessage.To.Add(new MailAddress("ToEmailId", "Name"));

SmtpClient mySmtpClient = new SmtpClient();
mySmtpClient.Send(myMessage);

【讨论】:

正如您的标签所说的 ASP.NET 和 C#,这是针对 ASP.NET 和 C#的 它给出错误“SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0 必须先发出 STARTTLS 命令。pw2sm574022pbb.59”【参考方案2】:

您可以安装一个 SMTP 服务器并运行它

[ASP]
<%
Set oSmtp = Server.CreateObject("AOSMTP.Mail")
oSmtp.ServerAddr = "127.0.0.1"
oSmtp.FromAddr = "from@yourdomain.com"
oSmtp.AddRecipient "name", "to@domain2.com", 0

oSmtp.Subject = "your subject"
oSmtp.BodyText = "your email body"

If oSmtp.SendMail() = 0 Then
  Response.Write "OK"
Else
  Response.Write oSmtp.GetLastErrDescription()
End If
%>

以上是针对 ASP *你说的是 ASP。如果您使用的是 asp.net,请使用 Rajpurohit 的示例代码,但您需要安装 smtp 服务器,或者可以访问允许远程连接的服务器(通过中继或名称/密码验证)

【讨论】:

【参考方案3】:

邮件发送代码:--

SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = false;
// When You use a Gmail Hosting then u You write Host name is smtp.gmail.com.
client.Host = "smtp.gmail.com";
client.Port = 587;
client.EnableSsl = true;
client.Credentials = new System.Net. NetworkCredential("YourHost@UserName","Password");
MailMessage msg = new MailMessage();
            msg.From = new MailAddress("fromAddress");
            msg.To.Add("ToAddress");
            msg.Subject = "Subject";
            msg.IsBodyhtml = true;
            msg.Priority = MailPriority.Normal;
            msg.BodyEncoding = System.Text.Encoding.UTF8;
            msg.body="body";
client.Send(message);

我认为这会对你有所帮助

【讨论】:

【参考方案4】:

试试这个

            using System.Net.Mail;
            using System.Net;
            var fromAddress = new MailAddress("from@gmail.com", "From Name");
            var toAddress = new MailAddress("to@gmail.com", "To Name");
            const string fromPassword = "password";
            const string subject = "test";
            const string body = "Hey now!!";

            var smtp = new SmtpClient
            
                Host = "smtp.gmail.com",
                Port = 587,
                EnableSsl = true,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                Credentials = new NetworkCredential(fromAddress.Address, fromPassword),
                Timeout = 20000
            ;
            using (var message = new MailMessage(fromAddress, toAddress)
            
                Subject = subject,
                Body = body
            )
            
                smtp.Send(message);
            

【讨论】:

它给了我一个错误“SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应是:5.5.1 需要身份验证。了解更多信息”

以上是关于如何使用gmail从asp发送电子邮件? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 GMail 帐户发送电子邮件? [复制]

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

尝试使用 Google.Apis.Gmail 从 asp.net core web api 应用程序从谷歌工作区发送电子邮件时出错

如何在 ASP.NET 中使用具有 HTML 正文 + 附件的 GMAIL API 发送电子邮件

如何发送电子邮件[重复]

如何使用 Gmail SMTP 服务器在 C# 中发送邮件? [复制]