【问题标题】:Error sending an email with VB.NET using gmail smtp使用 gmail smtp 通过 VB.NET 发送电子邮件时出错
【发布时间】:2016-07-18 04:41:34
【问题描述】:

我有一个小网站,有一个使用 gmail 的 smtp 发送电子邮件的联系表。 这是代码:

Dim MyMailMessage As New System.Net.Mail.MailMessage()

        'From requires an instance of the MailAddress type
        MyMailMessage.From = New MailAddress("office@mydomain.com")
        MyMailMessage.To.Add("test@mydomain.com")
        MyMailMessage.Subject = "MSG"
        MyMailMessage.IsBodyHtml = True
        MyMailMessage.Body = "TEXT"
        'Create the SMTPClient object and specify the SMTP GMail server
        Dim SMTPServer As New SmtpClient("smtp.gmail.com")
        SMTPServer.Port = 587
        SMTPServer.Credentials = New System.Net.NetworkCredential("user", "pass")
        SMTPServer.EnableSsl = True

        Try
            SMTPServer.Send(MyMailMessage)
            Return True
        Catch exx As SmtpException
            Throw exx
        End Try

我得到的错误是:

5.5.4 HELO/EHLO 参数无效,正在关闭连接。 ks5sm2862700wjb.13 - gsmtp

【问题讨论】:

  • 您显示的电子邮件地址是您实际使用的电子邮件地址吗?如果您使用的电子邮件地址中存在无效语法,您可能会收到 5.5.4 错误。
  • 不,我使用的是正常的合法电子邮件地址。
  • HELO/EHLO 系统尝试检测垃圾邮件并阻止它。消息的 ks5sm2862700wjb.13 - gsmtp 部分似乎表明 gmail 正在阻止它,因为它认为它是垃圾邮件(或可疑)。您是否尝试过使用 .IsBodyHtml = False 发送测试消息?
  • 没有帮助.. 我尝试使用 yahoo smtp 发送电子邮件,但同样的问题仍然存在,请注意,直到昨天一切正常(工作正常 1 年),我没有t 更改任何代码或 Web 服务器上的任何设置,它只是突然出现。

标签: asp.net vb.net email smtp gmail


【解决方案1】:

从今天早上开始,我遇到了同样的问题。

我们将发件人的电子邮件地址设置为 EHLO 的参数,但它对此犹豫不决。我相信@是造成问题的原因。这一定是一个新要求,因为这已经奏效了多年。

我将 EHLO 命令更改为“EHLO google”,它又可以工作了。

【讨论】:

  • EHLO 后面的值应该是您的主机和域名,而不是您要连接的服务器。 EHLO 就像在说“你好,我的名字是 xxxx”。当你说 EHLO 时,你是在说“你好,....”,没有名字。
【解决方案2】:

Google 刚刚开始阻止任何尝试使用错误参数的 HELO/EHLO 的连接。根据 RFC 5321,EHLO/HELO 应该有一个参数,它应该是发送邮件的机器的名称。

最常见的损坏配置是不发送任何参数,这就是您正在做的事情。错误消息不是很好,因为您必须注意中间有“空”参数的两个空格。

对于常规邮件发送,提供与您发送邮件的 IP 地址相匹配的主机名(即 DNS PTR 查找)是最正确的名称。

对于 smtp-msa(即,基于用户/密码的提交到 smtp.gmail.com),这不太重要,但它仍然应该是服务器的完全限定域名(如果可用)。

Google 尚未对该字段执行 RFC 5321 的全部要求,但如果您要修复它,最好正确执行。

我在 SmtpClient 对象上看不到任何设置要发送的内容,因此它要么完全损坏,要么正在进行一些内部调用以获取返回空字符串的主机名。

【讨论】:

    猜你喜欢
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 2017-05-12
    • 2019-05-06
    • 2016-01-16
    • 2011-08-11
    • 2015-02-21
    相关资源
    最近更新 更多