当前位置: 首页 > news >正文

django-发送邮件

一、业务场景

业务警告

邮箱验证

密码找回

二、邮件相关协议

1.SMYTP(简答邮件传输协议 25端口)

        属于“推送”协议    负责发送

2.IMAP(交互式邮件访问协议,应用层协议,143端口)

        用于从本地邮件客户端访问远程服务器上的邮件

        属于“拉取”协议        

3.POP3(邮局协议的第三个版本,TCP/IP中的一员 110端口)

        支持使用客户端远程管理在服务器上的电子邮件

        属于“拉取”协议

IMAP 和 POP3区别

IMAP具备摘要浏览功能,可预览部分摘要。在下载整个邮件

IMAP为双向协议,客户端操作可反馈给服务器

POP3必须下载全部邮件,无摘要功能

POP3为单项协议,客户端操作无法同步服务器

用户A 给用户B发送邮件的过程

 三、Django发邮件

Django中配置邮件功能,主要为SMTP协议,负责发邮件

1.原理:

        给Django授权一个邮箱

        Django用该邮箱给对应收件人发送邮件

        django.core.mail封装了电子邮件的自动发送SMTP协议

2.授权步骤-QQ邮箱为例

申请账号

登录QQ邮箱并修改设置

        修改  QQ邮箱->设置->账户->“POP3/IMAP....服务”

3.配置(settings.py)

各个邮箱授权密码获取方式网上百度

# 邮件相关配置
EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
# 腾讯QQ邮箱 SMTP服务器地址
EMAIL_HOST = 'smtp.qq.com'
# SMTP服务器的端口号
EMAIL_PORT = 25
# 发送邮件的QQ邮箱
EMAIL_HOST_USER = 'xxxxxx@qq.com'
# 授权密码
EMAIL_HOST_PASSWORD = 'xxxxxx'
# 与SMTP服务器通信时,是否启动TLS链接(安全链接)默认False
EMAIL_USE_TLS = False

 4.函数调用

  • 给一个人
from django.core import mail
class TestEmali(APIView):def post(self,request):mail.send_mail(subject="测试",message="测试邮箱",from_email="1353973780@qq.com",recipient_list=["1353973780@qq.com"])return Response("success")

各参数如下:

  • subject,邮件标题
  • message,发送邮件内容
  • from_email,发件人
  • recipient_list,收件人,可以是多个
  • fail_silently,如果为False时,发送失败抛出错误
  • 给多个人
  • 多封邮件给多个人

相关文章:

django-发送邮件

一、业务场景 业务警告 邮箱验证 密码找回 二、邮件相关协议 1.SMYTP(简答邮件传输协议 25端口) 属于“推送”协议 负责发送 2.IMAP(交互式邮件访问协议,应用层协议,143端口) 用于从本地邮件客户端…...

IP私域系统搭建课,视频号打通你的个人ip私域

标题:搭建IP私域系统课程:打通视频号,打造个人IP私域的关键策略 导语: 在当今信息爆炸的时代,个人IP(知识产权)的价值越来越受到重视。搭建IP私域系统通过打通视频号,成为了打造个人…...

咸虾米之一些快捷方式的操作,一行方块的左右滑动,方块在一区域内的任意移动

由于本着只学习微信小程序的目的,上面的几篇博文都是跟着黑马程序的课程走的!后面的就讲解uni-app的实验呢!一个人的精力是有限的,于是换了们课程继续深造微信小程序!!! 以下是在 .wxml中的一些…...

Linux 高级指令

十个常用高级Linux指令、其具体用法和示例: 1.grep:用于搜索指定文本内容,可以通过正则表达式匹配搜索。 用法示例:在当前目录下搜索包含关键词“hello”的文件并列出文件名: grep -r "hello" 2.find&a…...

江苏移动基于OceanBase稳步创新推进核心数据库分布式升级

*本文首发自《中国电信业》 数字经济时代,数据库作为企业核心数据存储、处理、挖潜等方面的关键载体,重要性日益凸显。对于运营商而言,数据库具有行业用户数量多、访问数量多、业务复杂度高、数据安全性高、响应要求性高以及需要 7*24 小时服…...

6. 删除顺序表中的重复元素

p17 6. 删除顺序表中的重复元素 #include<stdio.h> #include<stdlib.h> #define MaxSize 100 typedef struct {int* data;int capacity;int length; }SeqList;int InitList(SeqList &L) {L.data (int*)malloc(MaxSize * sizeof(int));L.capacity MaxSize;L.l…...

Vue——axios的二次封装

文章目录 一、请求和传递参数1、get 请求2、post 请求3、axios 请求配置 二、axios 的二次封装1、配置拦截器2、发送请求 三、API 的解耦1、配置文件对应的请求2、获取请求的数据 四、总结 一、请求和传递参数 在 Vue 中&#xff0c;发送请求一般在 created 钩子中&#xff0c…...

JavaScript Web APIs -03 事件流、事件委托、其他事件(加载、滚动、尺寸)

Web APIs - 03 文章目录 Web APIs - 03事件流捕获和冒泡阻止冒泡 事件委托其他事件页面加载事件元素滚动事件页面尺寸事件 元素尺寸与位置 进一步学习 事件进阶&#xff0c;实现更多交互的网页特效&#xff0c;结合事件流的特征优化事件执行的效率 掌握阻止事件冒泡的方法理解事…...

QT DAY 2

window.cpp #include "window.h" #include<QDebug> #include<QIcon> Window::Window(QWidget *parent) //构造函数的定义: QWidget(parent) //显性调用父类的构造函数 {//this->resize(430,330);this->resize(QSize(800,600));// this…...

ELK安装、部署、调试(三)zookeeper安装,配置

1.准备 java安装&#xff0c;系统自带即可 2.下载zookeeper zookeeper.apache.org上可以下载 tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz -C /usr/local mv apache-zookeeper-3.7.1-bin zookeeper 3.配置zookeeper mv zoo_sample.cfg zoo.cfg /usr/local/zookeeper/con…...

企业级智能PDF及文档处理SDK GdPicture.NET 14.2 Crack

企业级智能PDF及文档处理SDK GdPicture.NET 提供了一组非常先进的 API&#xff0c;这些 API 利用了人工智能、机器学习和模糊逻辑算法等尖端技术。经过超过 15 年的持续研究和对创新的专注&#xff0c;我们的 SDK 已成为市场上针对PDF、OCR、条形码、文档成像和各种格式最全面的…...

应用程序管理工具

应用程序管理是 DevOps 的重要组成部分。它可以定义为在所有阶段监控和管理软件应用程序的可用性、运行状况、性能和功能的过程&#xff0c;包括规划、设计、构建、测试、部署、维护和更新。这意味着应用程序从概念到停止都受到监控。 应用程序管理的重要性 管理应用程序可确…...

当数据集较小时,调节学习率的方法

当数据集较小时&#xff0c;调节学习率的方法 当数据集较小时&#xff0c;调节学习率的方法可以参考以下步骤&#xff1a; 当数据集较小时&#xff0c;调节学习率的方法可以参考以下步骤&#xff1a; 先尝试一个较小的学习率&#xff0c;如0.001&#xff0c;或者根据经验设置一…...

JS实现数组的扁平化(ES6实现)----例子+难点解析

要求&#xff1a; 取出嵌套数组(多维)中的所有元素放到一个新数组(一维)中如: [1, [3, [2, 4]]] > [1, 3, 2, 4] 基础知识&#xff1a; arr.concat() 语法&#xff1a;数组.concat(其他数组) 作用&#xff1a;将其他数组和数组拼接在一起 返回值&#xff1a;拼接好的新数…...

git 提交错误,回滚到某一个版本

git log 查看版本号 commit 后面跟的就是版本号git reset --hard 版本号 &#xff08;就可以回滚到你要去的版本&#xff09;git push -f &#xff08;因为本地回滚了&#xff0c;所以和远程会差几个版本。所以这时候只有强制推送&#xff0c;覆盖远程才可以&#xff09;...

数据结构:八种数据结构大全

数据结构 1.1 数据结构概述 数据结构是计算机存储、组织数据的方式&#xff1b;通常情况下&#xff0c;精心选择的数据结构可以带来更高的运行或者存储效率。数据结构的优良将直接影响着我们程序的性能&#xff1b;常用的数据结构有&#xff1a;数组&#xff08;Array&#xff…...

Java正则表达式系列--Pattern和Matcher的使用

原文网址&#xff1a;Java正则表达式系列--Pattern和Matcher的使用_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍Java的正则表达式中的两个重要类的用法&#xff1a;Pattern和Matcher。 在Java中&#xff0c;java.util.regex包定义了正则表达式使用到的相关类&#xff0c…...

40个web前端实战项目,练完即可就业,从入门到进阶,基础到框架,html_css【附视频+源码】

当下前端开发可以说是一个比较火的职业&#xff0c;所以学习的人比较多&#xff0c;不管是培训还是自学都是希望通过前端可以找到一份好的工作&#xff0c;但是很多自学的朋友在自学过程中有些盲目&#xff0c;不仅大大降低了学习的效率&#xff0c;而且也会打击自己的学习热情…...

Erasure-Code(纠删码) 最佳实践

Erasure-Code(纠删码) 最佳实践 1. 纠删码原理 这个星球产生的数据越来越庞大&#xff0c;差不多2010年开始各大互联网公司大都上线了系统以应对数据膨胀带来的成本增长。Erasure-Code&#xff08;纠删码&#xff09;技术应用其中。典型如Google 新一代分布式存储系统colossu…...

USB 转 4 串口芯片 CH9104

产品概述&#xff1a; CH9104 是一款USB总线的转接芯片&#xff0c;支持最高6M波特率与硬件流控&#xff0c;支持USB配置功能&#xff0c;提供RS485方向控制与GPIO等信号引脚&#xff0c;可实现PC等平台扩展多串口或多个串口设备升级成USB口。CH9104实现 USB 转四个异步串口 U…...

DLSS Swapper终极指南:如何免费智能管理游戏DLSS文件,提升游戏性能

DLSS Swapper终极指南&#xff1a;如何免费智能管理游戏DLSS文件&#xff0c;提升游戏性能 【免费下载链接】dlss-swapper 项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper 你是否厌倦了每次游戏更新后手动替换DLSS文件的繁琐操作&#xff1f;你是否希…...

C166编译器内联展开机制与嵌入式性能优化

1. C166编译器运行时库函数的内联展开机制解析在嵌入式开发领域&#xff0c;C166架构因其高效的实时性能被广泛应用于工业控制领域。作为长期使用Keil C166工具链的开发者&#xff0c;我发现编译器对标准库函数的内联优化处理直接影响着代码的执行效率和内存占用。本文将深入剖…...

告别手动更新!用Python脚本+Excel表格批量修改UG零件参数(NX2007实战)

告别手动更新&#xff01;用Python脚本Excel表格批量修改UG零件参数&#xff08;NX2007实战&#xff09; 在工业设计领域&#xff0c;UG NX作为主流的三维建模软件&#xff0c;其参数化设计能力直接影响产品迭代效率。传统手动修改模型参数的方式不仅耗时费力&#xff0c;还容易…...

数据分析篇---U型关系与与阈值效应

在数据科学、经济学和医学研究中&#xff0c;“U型关系”和“阈值效应”是两种非常经典且重要的非线性模式。它们描述的是变量之间并非简单的“越多越好”的直线关系&#xff0c;而是存在转折点。可以把线性关系想象成匀速开车&#xff0c;而U型和阈值效应则像是开车时遇到的上…...

NIC-400周期模型构建失败分析与解决方案

1. 问题概述&#xff1a;NIC-400周期模型构建失败场景分析最近在Arm IP Exchange平台上构建NIC-400周期模型时&#xff0c;不少工程师遇到了构建失败的问题。作为Arm CoreLink系列网络互连控制器的重要验证工具&#xff0c;周期模型的正确构建直接影响后续系统级验证的效率。根…...

保姆级教程:用Unity+OpenCVSharp插件实现摄像头实时轮廓检测与交互(附完整C#代码)

Unity与OpenCVSharp实战&#xff1a;从摄像头捕捉到交互式轮廓检测全流程解析 在游戏开发与计算机视觉的交叉领域&#xff0c;实时图像处理正成为增强玩家沉浸感的新 frontier。想象一下&#xff1a;玩家只需在摄像头前挥动手势&#xff0c;游戏中的角色就能同步做出反应&#…...

树莓派I2C保姆级教程:从命令行工具到Python脚本,一次搞定多个传感器(附避坑指南)

树莓派I2C实战指南&#xff1a;从硬件调试到Python自动化控制 第一次接触树莓派的I2C接口时&#xff0c;我对着密密麻麻的引脚和传感器数据手册发呆了半小时。直到成功读取到第一个温湿度数据&#xff0c;才意识到I2C这种看似复杂的通信协议&#xff0c;其实就像一位耐心的翻译…...

在微服务架构中利用 Taotoken 实现多模型 API 的动态切换与调用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 在微服务架构中利用 Taotoken 实现多模型 API 的动态切换与调用 面向后端架构师或开发负责人&#xff0c;当微服务系统需要集成多种…...

成都不良资产收包出包难?专业处置破局存量盘活困境

不仅如此&#xff0c;规范化的不良资产处置模式&#xff0c;还能助力区域化解债务风险&#xff0c;稳定地方金融环境&#xff0c;激活存量资产活力&#xff0c;对地方经济发展起到正向推动作用。不良资产收包出包&#xff0c;拼的从来不是蛮力与时间&#xff0c;而是专业、合规…...

避开这3个坑,你的SAR影像预处理效率翻倍:ENVI SARscape实战心得

避开这3个坑&#xff0c;你的SAR影像预处理效率翻倍&#xff1a;ENVI SARscape实战心得 在遥感数据处理领域&#xff0c;SAR影像因其全天候、全天时的独特优势&#xff0c;已成为地质灾害监测、海洋观测等领域不可或缺的数据源。然而&#xff0c;许多从业者在初次接触ENVI SARs…...