【发布时间】:2020-05-13 17:56:33
【问题描述】:
我正在尝试使用 Django 中的 python 使用 G-Suite 帐户发送电子邮件。由于谷歌停止了新应用程序的不太安全的应用程序选项,我不得不使用 Oauth2。 但是当我开始通过 smtplib 发送电子邮件时,错误:
smtplib.SMTPSenderRefused: (530, b'5.7.0 Authentication Required. Learn more at\n5.7.0 https://support.google.com/mail/?p=WantAuthError q4sm8418287pfl.175 - gsmtp'
而且查到引用后,意思是“530,”5.7.0“,必须先发出STARTTLS命令。” 但是,我添加了“server.starttls()”。有人可以帮我吗?非常感谢。
server = smtplib.SMTP('smtp.gmail.com', port=587)
server.ehlo('test')
server.starttls()
server.docmd('AUTH', 'XOAUTH2 ' + base64.b64encode(auth_string.encode()).decode("utf-8"))
server.sendmail(from_addr, to_addr, msg.as_string())
server.quit()
【问题讨论】:
-
你应该去support.google.com/mail/?p=WantAuthError阅读gmail想让你使用他们的SMTP服务器的内容。