Django调用MTP服务器给指定邮箱发送邮件

Django调用MTP服务器发送邮箱

邮箱的激活链接含有用户数据不能直接发送需要对其进行加密

发送邮箱是借助SMTP服务器进行中转

一. 配置SMTP服务中的邮箱信息以及激活链接

1. 配置邮箱权限

打开网易邮箱设置点击POP3

开启选项

注 : 在打开的过程中会弹出授权密码一点要保存

2. 配置SMTP服务中的邮箱信息以及激活链接

复制代码
# setting

# 发送邮件的配置参数
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' 	# 指定邮件后端
EMAIL_HOST = 'smtp.163.com'	 	# 发邮件主机
EMAIL_PORT = 25		# 发邮件的端口
EMAIL_HOST_USER = ''		# 授权邮箱
EMAIL_HOST_PASSWORD = ''		# 邮箱授权时获取的密码,非登录邮箱的密码
EMAIL_FROM = ''		# 发件人抬头

# 设置邮箱的激活连接 (请求时访问的链接 , url的参数要与其设置相同)
EMAIL_VERIFY_URL = 'http://127.0.0.1:8000/verification/'

3. 在测试文件中检验是否能发送信息

发送验证码是通过from django.core.mail import send_mail中的send_mail模块

各参数的作用

复制代码
'''
    subject: 邮件标题
    message: 邮件正文(普通的文本文件,字符串)
    from_email: 发件人抬头
    recipient_list: 收件人邮箱 (列表格式)
    html_message: 邮件正文(文件可以带渲染格式)
'''

发送验证码

复制代码
# test

if __name__ == '__main__':
    import os
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'ShopSystem.settings')
    import django
    django.setup()

    from django.core.mail import send_mail
    # 标题
    subject = '验证邮箱'
    # 内容
    message = '验证码'
    # 表头
    from_email = '几许-<13329239941@163.com>'
    # 发送到的邮箱
    recipient_list = ['1529063814@qq.com']

    send_mail(subject, message, from_email, recipient_list)
相关推荐
程序员老赵34 分钟前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
vivo互联网技术5 小时前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
兵慌码乱9 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
呱呱复呱呱9 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
兵慌码乱10 天前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
zzzzzz31011 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
大树8815 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
小宇宙Zz15 天前
Maven依赖冲突
java·服务器·maven
古城小栈15 天前
Unix 与 Linux 异同小叙
linux·服务器·unix