flask后端开发(12):邮箱验证码功能实现

目录

下载安装flask-mail包

bash 复制代码
pip install flask-mail

一、开启邮箱服务器

一般使用第三方服务

使用网易邮箱中的POP3/SMTP服务

并在config.py中配置一下

在exts.py中导入邮箱,创建邮箱对象

在app.py中也加载邮箱

邮箱测试

用邮箱服务器给我自己的邮箱发送测试

qq邮箱中收到了测试信息

二、验证发送功能实现

三、数据库存储验证码

因为在注册登录的时候,发送了验证码还需要规则来验证是否用户输入的和发送的相同。

1.新增数据模型

2.ORM迁移模型

bash 复制代码
flask db migrate
flask db upgrade

3.业务逻辑


数据库里面也存储到了

四、前端发送json请求

1.新建js和jquery文件夹

js用于点击事件的处理、弹出框等

在html中定义了一个button

首先要先确定点击事件的执行先后

click绑定了一个点击事件,event事件

2.ajax

点击按钮之后,会把文本框中的输入保存到email键值对中,并发送一个get请求到本地的5000端口,传给后端,相当于传值,后端接收到email,再用邮件服务器给这个email发送信息

五、表单验证

六、注册

1.区分请求

如何区分register下面的请求呢,要么get要么就是post

2.保存用户信息到数据库

输入验证码成功跳转

数据库也保存进来了

相关推荐
m0_4636722014 小时前
如何理解闭包对内存的影响并手动解除引用防止泄漏
jvm·数据库·python
yuanpan14 小时前
Python + sqlite3 本地 SQLite 数据库操作实战:完整 CRUD 入门教程
开发语言·python·opencv
霸道流氓气质14 小时前
SpringBoot+LangChain4j+Ollama+MCP实现智能天气工具调用示例
java·spring boot·后端
NG WING YIN14 小时前
一鍵計算稅項支出
python
m0_7364393014 小时前
如何处理无法修改主键列的问题_先删除AUTO_INCREMENT再移除主键的顺序
jvm·数据库·python
2401_8987176614 小时前
如何在 SvelteKit 中为动态加载的图片正确实现悬停显示覆盖层
jvm·数据库·python
m0_7020365314 小时前
如何在MongoDB中实现按时间跨度的分片路由_时间序列范围分片与冷热节点架构.txt
jvm·数据库·python
2401_8844541514 小时前
golang如何使用Fiber高性能框架_golang Fiber框架入门教程
jvm·数据库·python
ㄟ留恋さ寂寞14 小时前
Golang怎么读取和修改图片EXIF信息_Golang如何用goexif提取照片的拍摄时间和GPS位置【方法】
jvm·数据库·python