注册应用。 我在http://agiliq.com/books/djenofdjango/chapter5.html上关注设置 电子邮件验证,它建议跟随setup.py
的配置EMAIL_USE_TLS = True
EMAIL_HOST = "smtp.gmail.com"
EMAIL_HOST_USER = "user@example.com"
EMAIL_HOST_PASSWORD = "secret"
EMAIL_PORT = 587
但是我在某些论坛上收到了关于SMTP支持TLS的错误,我在阅读时评论了EMAIL_USE_TLS 然后我得到了aut方法错误,并再次从我读到的一些论坛发表评论EMAIL_HOST_USER =" user@example.com"和EMAIL_HOST_PASSWORD ="秘密"但是知道我收到了以下错误:
raise SMTPSenderRefused(code, resp, from_addr)
Exception Type: SMTPSenderRefused at /accounts/register/
Exception Value: (502, '5.5.1 Unrecognized command. h47sm103656655eey.13 - gsmtp', u'webmaster@localhost')
我真的很困惑如何配置setting.py来发送电子邮件。
答案 0 :(得分:0)
我遇到了同样的问题。但我偶然发现了https://accounts.google.com/DisplayUnlockCaptcha,我跟着他。它浏览了两步验证,不允许我的应用程序发送任何邮件。
我刚刚点击了与2-Step-Verification相关的链接,最终使用应用密码登录
通过更改:
EMAIL_HOST_PASSWORD = "secret"
生成的16个字符的密码:
EMAIL_HOST_PASSWORD = "newlygeneratedsecret"
答案 1 :(得分:0)
请尝试使用以下代码。我已经使用了下面的代码,并获得了上述问题的解决方案。我正在发送HTML正文,这就是为什么我使用 MIMEText(variable,“ html”)的原因。请使用MIMEText(variable,“ text”)。
me = "your email"
you = "email of person whom you want to send the mail"
msg = MIMEMultipart("alternative")
msg["Subject"] = "Subject String"
msg["From"] = me
msg["To"] = you
# message to be sent
#for HTML as a part of mail body
html = '<html><body><p></a>Testing HTML/a></p></body></html>'
part2 = MIMEText(html, "html")
msg.attach(part2)
s = smtplib.SMTP("smtp.gmail.com", 587)
s.starttls()
s.login(me, "password of your mail")
# sending the mail
s.sendmail(me, you, msg.as_string())
# terminating the session`enter code here`
s.quit()