我正在尝试使用gmail服务器发送密码重置电子邮件,但出现错误。 “需要SMTPSenderRefused身份验证”
Google帐户具有-1.启用两步验证2.通过应用密码进行第三方访问3.允许访问安全程度较低的应用:打开
'''
setting.py
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = os.environ.get('EMAIL_HOST_USER') #my gmail acc
EMAIL_PASSWORD = os.environ.get('EMAIL_PASSWORD') #app password from gmail acc
EMAIL_PORT = 587
'''
''' urls.py
path('password-reset/', PasswordResetView.as_view(
template_name='users/password-reset.html'), name='password_reset'),
path('password-reset-done/', PasswordResetDoneView.as_view(
template_name='users/password-reset-done.html'),
name='password_reset_done'),
path('password-reset-confirm/<uidb64>/<token>/',
PasswordResetConfirmView.as_view(
template_name='users/password_reset_confirm.html'),
name='password_reset_confirm'),
'''
我希望收到带有重置密码链接的电子邮件,该电子邮件会发送给用户或在出现提示时将电子邮件发给谁的人,但我得到的是此错误-
'''
SMTPSenderRefused at /password-reset/
(530, b'5.5.1 Authentication Required. Learn more at\n5.5.1
https://support.google.com/mail/?p=WantAuthError p17sm3671371wrq.95 -
gsmtp', 'webmaster@localhost')
'''
答案 0 :(得分:0)
在Google中创建一个新帐户,避免两步验证。 将您的帐户名和密码直接添加到设置 会起作用
如果您是新手,请将这些详细信息直接添加到settings.py中,以后可以在本地环境中进行配置