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)
相关推荐
NiceCloud喜云1 小时前
Anthropic 一周三连发:Cowork 多端、Fable 5 按需付费、J-space 论文的技术解读
java·服务器·网络·人工智能·ai
qeen872 小时前
【Linux】指令补充与shell的简单介绍
linux·运维·服务器
一拳一个娘娘腔3 小时前
【后渗透-Linux篇】Linux 提权与逃逸:从 www-data到 root的蜕变
linux·运维·服务器
Dlrb12113 小时前
信息查询Web服务器-->电子商城信息查询项目
linux·服务器·数据库·html·嵌入式·epoll·数据查询
ZhengO_Oz4 小时前
虚拟机CentOS 网络配置【实操】
运维·服务器·网络
utf8mb4安全女神4 小时前
如果复制windows 内容到 Linux,带入不可见特殊符,怎么解决
linux·运维·服务器
fei_sun5 小时前
网卡、网关、网桥、交换机、路由器
linux·服务器·网络
阿成学长_Cain5 小时前
Linux grpck命令超全详解|校验组文件完整性、修复/etc/group错误实战
linux·运维·服务器·网络
进击切图仔5 小时前
基于千问的白盒蒸馏 SOP
运维·服务器·人工智能·python·效率
Database_Cool_6 小时前
RAG 混合检索首选:阿里云 Lindorm 向量+全文一体化检索
数据库·阿里云·django·云计算