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)
相关推荐
mldlds8 分钟前
windows手动配置IP地址与DNS服务器以及netsh端口转发
服务器·windows·tcp/ip
一直都在5721 小时前
深入理解 synchronized:到底锁的是谁?
运维·服务器
RisunJan1 小时前
Linux命令-mkbootdisk(可建立目前系统的启动盘)
linux·运维·服务器
朽棘不雕2 小时前
Linux工具(上)
linux·运维·服务器
daad7772 小时前
bitcoin HD钱包示例 真实使命7
运维·服务器
Zero-Talent2 小时前
TCP/IP协议
运维·服务器·网络
Du_chong_huan3 小时前
1.7 计算机网络和因特网的历史 | 《计算机网络:自顶向下方法》精读版
运维·服务器·网络
没头脑的男大3 小时前
关于tailscale和ssh那些事儿
运维·服务器·ssh
竹之却3 小时前
OpenClaw 接入QQ-Bot + 接入Feishu(飞书)
运维·服务器·飞书·openclaw·qq-bot·opencalw接入qq+飞书
野犬寒鸦3 小时前
JVM垃圾回收机制面试常问问题及详解
java·服务器·开发语言·jvm·后端·算法·面试