我有一个情况。我想连接到 gmail smtp 服务器并从我的 gmail 帐户发送电子邮件。因为 gmail smtp 服务器使用 PLAIN 身份验证和 TLS。我连接到 gmail smtp 服务器。服务器响应如下。
220 mx.google.com ESMTP n21sm810716wed.43
然后我发送“AUTH PLAIN”并发送“EHLO”命令。服务器响应如下:
503 5.5.1 EHLO/HELO first. n21sm810716wed.43
然后我再次向它发送“EHLO”命令,响应是:
250-mx.google.com at your service, [203.99.179.10]
在此之后,无论我给它什么。它打印一系列行和退出。它给出的响应顺序是;
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
250 ENHANCEDSTATUSCODES
我应该给它什么才能让我登录并给我发送电子邮件?任何帮助或建议将不胜感激。谢谢
另见
Using SMTP, Gmail, and STARTTLS
您面临 3 个问题:
首先,您没有阅读 EHLO 命令的完整响应。
此命令有多行响应:
250-mx.google.com at your service, [203.99.179.10]
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
250 ENHANCEDSTATUSCODES
注意最后 250 个代码后的 空格 - 这意味着这是最后一个响应行。
第二个:EHLO 应该是您发送的第一个命令。
第三:Gmail 不允许在不使用 SSL 的情况下登录,无论是隐式(在 465 端口上)还是显式(STARTTLS 命令)
我是一名优秀的程序员,十分优秀!