python - Django 电子邮件不起作用 - smtplib.SMTPServerDisconnected : Connection unexpectedly closed

标签 python django email sendgrid

我正在使用标准 Django/SendGrid setup用于发送电子邮件。这是我的 settings.py 中的相关字段:

EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_HOST_USER = 'myusername'
EMAIL_HOST_PASSWORD = 'mypassword'
EMAIL_PORT = 465
EMAIL_USE_SSL = True
DEFAULT_FROM_EMAIL = 'admin@mysite.com'

我正在测试通过执行以下命令在我的 shell 中发送电子邮件:
send_mail('test','test','email@email.com',['to@email.com'])

但是,它返回此错误回溯:
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/Users/zorgan/Desktop/app/lib/python3.5/site-packages/django/core/mail/__init__.py", line 62, in send_mail
    return mail.send()
  File "/Users/zorgan/Desktop/app/lib/python3.5/site-packages/django/core/mail/message.py", line 348, in send
    return self.get_connection(fail_silently).send_messages([self])
  File "/Users/zorgan/Desktop/app/lib/python3.5/site-packages/django/core/mail/backends/smtp.py", line 104, in send_messages
    new_conn_created = self.open()
  File "/Users/zorgan/Desktop/app/lib/python3.5/site-packages/django/core/mail/backends/smtp.py", line 71, in open
    self.connection.login(force_str(self.username), force_str(self.password))
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/smtplib.py", line 720, in login
    initial_response_ok=initial_response_ok)
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/smtplib.py", line 630, in auth
    (code, resp) = self.docmd("AUTH", mechanism + " " + response)
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/smtplib.py", line 420, in docmd
    return self.getreply()
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/smtplib.py", line 393, in getreply
    raise SMTPServerDisconnected("Connection unexpectedly closed")
smtplib.SMTPServerDisconnected: Connection unexpectedly closed

知道为什么我会收到此错误吗?

PS:这是我的本地开发服务器

最佳答案

电子邮件端口 = 465
EMAIL_USE_SSL = 真

改变这个

电子邮件端口 = 587
EMAIL_USE_TLS = 真

你可以检查这个链接
https://sendgrid.com/docs/for-developers/sending-email/django/

关于python - Django 电子邮件不起作用 - smtplib.SMTPServerDisconnected : Connection unexpectedly closed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49490930/

相关文章:

django - 在 Django 中用于 Comet 的库是什么?

java - 如何在Java中设置Email客户端?

java - 流行推荐的轻量级java(或python?)web应用框架是什么?

python - 是否有使用常规文件系统的简单 Python map-reduce 框架?

django - Apache | Django : How to run websites on the back of a base URL?

python - django 不读我的 models.py

java - 这个电子邮件验证表达式在 Java 中如何工作?

javascript - 从指令设置表单元素的属性

python - 尝试使用 for 循环比较文本

python - 我可以使用 "unaliased"属性名称初始化 pydantic 模型吗?