Django 发送网格 Heroku 设置

Django Sendgrid Heroku setup

我使用 Django / Sendgrid / Heroku 设置,它运行良好但没有明显原因停止。

我的 Django 设置:

EMAIL_HOST="smtp.sendgrid.net"
EMAIL_HOST_PASSWORD="..."
EMAIL_HOST_USER="..."
EMAIL_PORT=587
EMAIL_USE_TLS=True

使用此设置,如果我使用 django 库发送简单的电子邮件...

from django.core.mail import send_mail 
send_mail(
    'Subject here',
    'Here is the message.',
    from_email_address,
    [to_email_address],
    fail_silently=False,
) 

我收到这个错误

--> SMTPServerDisconnected: Connection unexpectedly closed

我仍然可以使用 sendgrid python 库发送电子邮件

import sendgrid 
sg = sendgrid.SendGridAPIClient(apikey)
sg.send(data) 

有什么我遗漏的吗?

刚刚弄明白了: Sendgrid 通过 SENDGRID_PASSWORD Heroku 环境变量动态提供密码。但是,用于电子邮件设置的变量是 EMAIL_HOST_PASSWORD,在我们更改密码后未更新。

确保两个变量相同