【问题标题】:Gmail SMTP, CLIENT -> SERVER: AUTH XOAUTH2, SMTP ERROR: AUTH command failed: 334Gmail SMTP,客户端-> 服务器:AUTH XOAUTH2,SMTP 错误:AUTH 命令失败:334
【发布时间】:2018-09-25 00:38:48
【问题描述】:

我正在尝试连接Gmail SMTP v1.1.7 plugin

我已经通过谷歌开发者控制台成功激活它,获取 OAuth 密钥

然后将插件与 Gmail 连接

但是,当我尝试发送测试电子邮件时,我收到了身份验证错误

服务器信息 2018-04-15 00:46:32 连接:打开 smtp.gmail.com:587, timeout=300, options=array ('ssl' => array ('verify_peer' => false, 'verify_peer_name' => false , 'allow_self_signed' => true, ),)
2018-04-15 00:46:33 连接:打开
2018-04-15 00:46:33 SMTP -> get_lines(): $data 是 ""
2018-04-15 00:46:33 SMTP -> get_lines(): $str 是“220 smtp.gmail.com ESMTP e77sm21399032pfk.147 - gsmtp”
2018-04-15 00:46:33 服务器 -> 客户端:220 smtp.gmail.com ESMTP e77sm21399032pfk.147 - gsmtp
2018-04-15 00:46:33 客户端 -> 服务器:EHLO 本地主机
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是 ""
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250-smtp.gmail.com 为您服务,[113.166.92.87]”
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]”
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250-SIZE 35882577”
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577”
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250-8BITMIME”
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME”
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250-STARTTLS”
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-STARTTLS”
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250-ENHANCEDSTATUSCODES”
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES”
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250-PIPELINING”
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES250-PIPELINING”
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250-CHUNKING”
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES250-PIPELINING250-大块“
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“250 SMTPUTF8”
2018-04-15 00:46:34 服务器 -> 客户端:250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES250-PIPELINING250-CHUNKING250 SMTP8
服务器:STARTTLS
2018-04-15 00:46:34 SMTP -> get_lines(): $data 是 ""
2018-04-15 00:46:34 SMTP -> get_lines(): $str 是“220 2.0.0 准备启动 TLS”
2018-04-15 00:46:34 服务器 -> 客户端:220 2.0.0 准备启动 TLS
2018-04-15 00:46:34 客户端 -> 服务器:EHLO 本地主机
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是 ""
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250-smtp.gmail.com 为您服务,[113.166.92.87]”
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]”
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250-SIZE 35882577”
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577”
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250-8BITMIME”
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME”
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OUTHBEARER XOAUTH”
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN- CLIENTTOKEN OAUTHBEARER XOAUTH"
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250-ENHANCEDSTATUSCODES”
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN- CLIENTTOKEN OAUTHBEARER XOAUTH250-ENHANCEDSTATUSCODES"
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250-PIPELINING”
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN- CLIENTTOKEN OAUTHBEARER XOAUTH250-ENHANCEDSTATUSCODES250-PIPELINING"
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250-CHUNKING”
2018-04-15 00:46:35 SMTP -> get_lines(): $data 是“250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-客户端令牌 OAUTHBEARER XOAUTH250-ENHANCEDSTATUSCODES250-PIPELINING250-CHUNKING"
2018-04-15 00:46:35 SMTP -> get_lines(): $str 是“250 SMTPUTF8”
2018-04-15 00:46:35 SERVER -> CLIENT: 250-smtp.gmail.com 为您服务,[113.166.92.87]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUHBEARER XOAUTH250-EN PIPELINING250-CHUNKING250 SMTPUTF8
2018-04-15 00:46:35 请求的身份验证方法:XOAUTH2
2018-04-15 00:46:35 服务器上可用的身份验证方法:LOGIN,PLAIN,XOAUTH2,PLAIN-CLIENTTOKEN,OAUTHBEARER,XOAUTH
2018-04-15 00:46:36 客户端 -> 服务器:AUTH XOAUTH2 [somethingEncriptedHere]=
2018-04-15 00:46:36 SMTP -> get_lines(): $data 是 ""
2018-04-15 00:46:36 SMTP -> get_lines(): $str 是 "334 [somethingShorteEncriptedHere]=="
2018-04-15 00:46:36 服务器 -> 客户端:334 [somethingShorteEncriptedHere]==
2018-04-15 00:46:36 SMTP 错误:AUTH 命令失败:334 [somethingShorterEncriptedHere]==
SMTP 错误:无法验证。
2018-04-15 00:46:36 客户端 -> 服务器:退出

然后它尝试使用用户名和密码,但也失败了。

日志的相关部分是

2018-04-15 00:46:35 请求的身份验证方法:XOAUTH2 //协商身份验证方法
2018-04-15 00:46:35 服务器上可用的身份验证方法:LOGIN,PLAIN,XOAUTH2,PLAIN-CLIENTTOKEN,OAUTHBEARER,XOAUTH //协商身份验证方法
2018-04-15 00:46:36 CLIENT -> SERVER: AUTH XOAUTH2 [somethingEncriptedHere]= //发送加密的客户端密码(我的猜测)
2018-04-15 00:46:36 SMTP -> get_lines(): $data 是 ""
2018-04-15 00:46:36 SMTP -> get_lines(): $str 是 "334 [somethingShorterEncriptedHere]=="
2018-04-15 00:46:36 服务器 -> 客户端:334 [somethingShorterEncriptedHere]==
2018-04-15 00:46:36 SMTP 错误:AUTH 命令失败:334 [somethingShorterEncriptedHere]== //失败 SMTP 错误:无法验证。
2018-04-15 00:46:36 客户端 -> 服务器:退出

如果它已经成功连接/注册了 Gmail 插件,我不知道为什么它会在身份验证失败?

【问题讨论】:

    标签: php wordpress oauth-2.0 smtp gmail


    【解决方案1】:

    我自己想通了

    似乎电子邮件必须是我已将 Web 应用程序连接到 (xxxxx@gmail.com) 的电子邮件,而不是看起来像 xxxxx@smtp-xxxx.iam.gserviceaccount.com 的电子邮件

    换句话说,您可以使用错误的电子邮件将插件连接到 gmail API,但稍后发送电子邮件会失败。

    【讨论】:

      【解决方案2】:

      首先您可以检查 API,然后您可以在另一个网络服务器中进行检查。 您是否为您自己的网站授予了 google API 权限? 如果有什么不正常,也许你必须检查你的插件版本。

      【讨论】:

        猜你喜欢
        • 2021-04-01
        • 1970-01-01
        • 2017-07-15
        • 2012-02-16
        • 2016-11-13
        • 1970-01-01
        • 2016-09-10
        • 1970-01-01
        相关资源
        最近更新 更多