【问题标题】:asp.net The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required [duplicate]asp.net SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应是:5.5.1 Authentication Required [重复]
【发布时间】:2013-10-31 08:07:10
【问题描述】:

您好,我知道这个问题有点多余,但我的体验不同,这是我在 asp.net 上创建帐户后发送电子邮件的代码

Dim newreg As MembershipUser = Membership.GetUser(context.Request("username"))
                Dim newid As Guid
                If newreg.ProviderUserKey IsNot Nothing Then
                    newid = DirectCast(newreg.ProviderUserKey, Guid)
                End If

                Dim body As String = String.Empty
                Dim reader As StreamReader = New StreamReader(context.Server.MapPath("~/Account/email.htm"))
                body = reader.ReadToEnd
                body = body.Replace("{UserName}", context.Request("username").ToString)
                body = body.Replace("{Url}", "http://wwww.123.com/Account/activate.aspx?id=" & context.Request("username").ToString & "&usertype=" & givetype(context.Request("username")) & "&actid=" & newid.ToString)

                Dim mailMessage As MailMessage = New MailMessage
                mailMessage.From = New MailAddress(ConfigurationManager.AppSettings("UserName"))
                mailMessage.Subject = "Account Activation"
                mailMessage.Body = body
                mailMessage.IsBodyHtml = True
                mailMessage.To.Add(New MailAddress(context.Request("email").ToString))
                Dim smtp As SmtpClient = New SmtpClient
                smtp.Host = ConfigurationManager.AppSettings("Host")
                smtp.EnableSsl = True
                Dim NetworkCred As System.Net.NetworkCredential = New System.Net.NetworkCredential
                NetworkCred.UserName = ConfigurationManager.AppSettings("UserName")
                NetworkCred.Password = ConfigurationManager.AppSettings("Password")
                smtp.UseDefaultCredentials = False
                smtp.Credentials = NetworkCred
                smtp.Port = Integer.Parse(ConfigurationManager.AppSettings("Port"))
                smtp.Send(mailMessage)

奇怪的是,当我在 localhost 上运行网站时,gmail 允许它,但是当我在 vps 上运行网站时,它拒绝并给出此错误

SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.5.1 需要身份验证

任何帮助都可以解决问题

【问题讨论】:

    标签: asp.net email gmail


    【解决方案1】:

    搞定了,问题是gmail阻止了发送电子邮件的请求,因为我为应用程序创建了一个密码,现在gmail没有阻止发送电子邮件的请求,希望这会有所帮助,如果有人愿意的话gmail遇到同样的问题

    【讨论】:

      猜你喜欢
      • 2012-05-28
      • 2015-05-01
      • 2015-05-18
      • 2017-02-17
      • 2014-11-08
      • 2014-01-21
      • 2016-05-16
      相关资源
      最近更新 更多