Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Heroku上Django的SMTP身份验证错误_Python_Django_Email_Heroku_Smtp - Fatal编程技术网

Python Heroku上Django的SMTP身份验证错误

Python Heroku上Django的SMTP身份验证错误,python,django,email,heroku,smtp,Python,Django,Email,Heroku,Smtp,我正在尝试使用gmail smtp服务器从我的django应用程序发送电子邮件。当我在本地服务器上运行应用程序时,会发送电子邮件。但我在heroku上使用SMTP身份验证时遇到错误 回溯 设置.py- # Email configuration. EMAIL_HOST = 'smtp.gmail.com' EMAIL_PORT = 587 EMAIL_HOST_USER = '***************@gmail.com' EMAIL_HOST_PASSWORD = '*********

我正在尝试使用gmail smtp服务器从我的django应用程序发送电子邮件。当我在本地服务器上运行应用程序时,会发送电子邮件。但我在heroku上使用SMTP身份验证时遇到错误

回溯

设置.py-

# Email configuration.

EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = '***************@gmail.com'
EMAIL_HOST_PASSWORD = '************'
EMAIL_USE_TLS = True
DEFAULT_FROM_EMAIL = '******************@gmail.com'
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
我已经重新检查了帐户密码,还启用了从我的谷歌帐户访问不太安全的应用程序。但是我还是遇到了这个错误。

尝试使用,因为gmail smtp有一些问题。我也无法使用gmail smtp。但是使用sendgrid它工作得非常好。这也是免费的基本用途

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_HOST_USER = 'username'
EMAIL_HOST_PASSWORD = 'userpassword'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
DEFAULT_FROM_EMAIL = 'asdf@example.com'

将邮件(@gmail.com)域更改为您的公司域。
然后它就可以工作了。我们无法使用from mail domain@gmail.com,
DEFAULT\u from\u EMAIL='*********************@yourcompanydomain.com'

禁用客户端验证码
如果未使用双因素身份验证,并且已验证Python源代码中的凭据是否正确,请执行以下步骤:

  • 在浏览器中登录到gmail
  • 导航到该页面
  • 单击continue按钮,您将看到消息
    帐户访问已启用请尝试从新设备或应用程序再次登录到您的Google帐户。

  • 运行Python脚本-登录尝试应该成功


  • 用户名和用户密码将是来自sendgrid的,对吗?是的,只需创建帐户并使用相同的用户名和密码。那么来自电子邮件的
    DEFAULT\u会是我的gmail电子邮件id吗,对于我,我已经给出了
    support@kodefork.com.
    如果未指定发件人,它将用于发送。虽然我知道如何让它工作,但当错误弹出时,谷歌也会发送一封安全电子邮件,提及来自不安全应用的登录尝试。这是否意味着它将与HTTPS完美配合?我还想在您的回答中补充一点,即DisplayUnlockCapatha仅在10分钟内保持活动状态,即每10分钟您需要启用一次访问。