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)
相关推荐
ROCKY_8173 小时前
计算机网络考试考点——应用层
服务器·网络·计算机网络
e***74953 小时前
Modbus报文详解
服务器·开发语言·php
运维管理3 小时前
anolis openeuler 文件复制上用命令-学习篇
服务器
I***t7163 小时前
自己编译RustDesk,并将自建ID服务器和key信息写入客户端
运维·服务器
誰能久伴不乏3 小时前
Linux文件套接字AF_UNIX
linux·服务器·c语言·c++·unix
可爱又迷人的反派角色“yang”3 小时前
LVS+Keepalived群集
linux·运维·服务器·前端·nginx·lvs
AI视觉网奇3 小时前
vscode 远程失败
linux·服务器
曹牧4 小时前
C#中的StartsWith
java·服务器·c#
V***u4534 小时前
SQL2000在win10上安装的方法
运维·服务器
闲人编程4 小时前
Django与GraphQL:使用Graphene构建现代化API
django·sqlite·graphql·codecapsule·graphene