37

这个 Go 程序成功地从我的家用计算机发送电子邮件,但在 DigitalOcean 上的虚拟服务器上收到以下错误:

panic: 530 5.5.1 Authentication Required. Learn more at

这是代码:

auth := smtp.PlainAuth("", "bjorkbjorksen@gmail.com", "PASSWORD", "smtp.gmail.com")
msg := "Subject: Hello\r\n\r\nWorld!"
e = smtp.SendMail("smtp.gmail.com:587", auth, "bjorkbjorksen@gmail.com", []string{email}, []byte(msg))
if e != nil { panic(e) }
4

5 回答 5

39

进入您的 Gmail 帐户的安全设置,并将“安全性较低的应用程序”的权限设置为Enabled。为我工作。

于 2014-07-24T13:31:51.693 回答
13

卧槽!我登录了该帐户,页面顶部出现“可疑登录尝试”警告消息。单击警告并授权访问后,一切正常。

于 2013-06-21T04:19:27.167 回答
7

你需要去这里https://security.google.com/settings/security/apppasswords

然后选择 Gmail,然后选择设备。然后点击生成。只需复制并粘贴由 Google 生成的密码。

于 2015-03-17T18:54:19.433 回答
0

您需要在设置用于发送邮件的电子邮件时打开 POP 邮件和 IMAP 邮件功能。祝你好运!

于 2014-03-16T20:24:34.120 回答
0

在可能的情况下,将 SMTPAuth 设置为 true 可以修复它。当然,您需要将“不太安全的应用程序”的权限设置为启用。

$mail->SMTPAuth = 真;

于 2019-10-24T02:30:59.450 回答