Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.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 SMTPSenderrefuse at/submit\u contact\u form/-5.5.1要求认证_Python_Django_Smtp - Fatal编程技术网

Python SMTPSenderrefuse at/submit\u contact\u form/-5.5.1要求认证

Python SMTPSenderrefuse at/submit\u contact\u form/-5.5.1要求认证,python,django,smtp,Python,Django,Smtp,我正在尝试将提交的表单数据发送到电子邮件地址,但收到此错误 这是我的观点 def contactform(request): contact_form = ContactForm(data=request.POST) if contact_form.is_valid(): data = contact_form.cleaned_data send_mail(subject=data['subject'],

我正在尝试将提交的表单数据发送到电子邮件地址,但收到此错误

这是我的观点

def contactform(request):
    contact_form = ContactForm(data=request.POST)
    if contact_form.is_valid():
            data = contact_form.cleaned_data
            send_mail(subject=data['subject'], 
                      message=data['message'], 
                      from_email=data['email'],
                      recipient_list=['jzakaria2000@gmail.com'], 
                      fail_silently=False)
            return HttpResponseRedirect('/')
设置.py

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'zetapsiuchicago@gmail.com'
EMAIL_HOST_PASSWORD = os.getenv('WEBSITE_PASS')

我曾尝试用谷歌搜索这个错误的解决方案,但到目前为止都没有成功。如果有人能帮我解决这个问题或为我指出正确的方向,我将非常感激

以纯文本添加密码将删除您的5.5.1身份验证要求错误

假设您的密码是123weq,将其添加为

EMAIL_HOST_PASSWORD = '123weq'
setting.py

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'zetapsiuchicago@gmail.com'
EMAIL_HOST_PASSWORD = 'password of zetapsiuchicago@gmail.com in plain text'

如在中添加明文密码?这有什么区别?我已将密码设置为一个环境变量,只需使用os.getenv('WEBSITE_PASS')获取密码,可能是您的密码错误或格式不正确,或者getenv无法访问密码,但纯文本密码对您有效。建议不要将密码作为纯文本保存在代码存储库中的最佳做法。因此,尽管这就是它工作的原因。我仍然想知道为什么作为环境变量读取的密码不起作用。当这是读取密码的最常用方法时