django 发送邮件配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013967628/article/details/83655943

拿qq邮箱当做发件箱举例子,首先配置邮箱

在qq邮箱的账户设置里面设置如下

得到第三方登陆授权码

setting.py中设置如下:

# 发送邮件设置
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' #固定写法
EMAIL_HOST = 'smtp.qq.com' #SMTP地址
EMAIL_PORT = 25 #SMTP端口
EMAIL_HOST_USER = '[email protected]' #发送邮件的邮箱
EMAIL_HOST_PASSWORD = '******'  # 授权码
EMAIL_SUBJECT_PREFIX = '[一念永恒的博客] ' #为邮件Subject-line前缀,默认是'[django]'
EMAIL_USE_TLS = True  # 与SMTP服务器通信时,是否启动TLS链接(安全链接)默认false

view.py

局部关键代码示例;

    if email != '':
        # 生成验证码
        code = ''.join(random.sample(string.ascii_letters + string.digits, 4))
        now = int(time.time())
        send_code_time = request.session.get('send_code_time', 0)
        if now - send_code_time < 30:
            data['status'] = 'ERROR'
        else:
            request.session[send_for] = code
            request.session['send_code_time'] = now
            
            # 发送邮件
            send_mail(
                '绑定邮箱',
                '验证码:%s' % code,
                '[email protected]',
                [email],
                fail_silently=False,
            )
            data['status'] = 'SUCCESS'
    else:
        data['status'] = 'ERROR'

猜你喜欢

转载自blog.csdn.net/u013967628/article/details/83655943