栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python/Django项目实现QQ邮箱发送

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python/Django项目实现QQ邮箱发送

配置

在项目的同名app下的settings文件中配置

# settings里配置

# 邮箱配置
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.qq.com'  # 腾讯QQ邮箱 SMTP 服务器地址
EMAIL_PORT = 25  # SMTP服务的端口号
EMAIL_HOST_USER = '1668*****@qq.com'  # 发送邮件的QQ邮箱
EMAIL_HOST_PASSWORD = 'bkqfeo*****'  # 在QQ邮箱->设置->帐户->“POP3/IMAP......服务” 里得到的在第三方登录QQ邮箱授权码

实现方法

# 导包
from django.core import mail
# QQ邮箱发送

    def post(self,request):
        # 发送人邮箱
        from_email = "xxxx@qq.com"
        # 发送的标题及内容
        subject = '标题'
        message = "发送的内容"
        # 收件人邮箱
        # 应用中需要为列表
        to_email = 'xxx@qq.com'
		# 调用方法发送
        mail.send_mail(subject, message, from_email, to_email)
        print('发送成功')

项目应用

思路:随机数函数生成六位数验证码存在redis中来校验,并发送邮件

# QQ邮箱发送
class Send_email(APIView):
    def get(self,request):
        from_email = "1668*****@qq.com"
        email = request.query_params.get("email")
        data = random.randint(100000,999999)
        print('data', data)
        redis1 = redis.Redis(db=2)
        redis1.setex(email, 60 * 10, data)

        subject = '测试'
        message = "验证码:{}".format(data)
        to_email = [email]
        print('to_email', to_email)
        try:
            mail.send_mail(subject, message, from_email, to_email)
        except Exception as e:
            print("邮箱发送失败",data)
        print('发送成功')

        return Response({"msg":"发送成功","code":200})

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/997997.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号