
flask项目实战
2020.11-2020.12建立,用于描述flask项目实战的内容
LCY133
这个作者很懒,什么都没留下…
展开
-
flask项目支持https
ssl_context 参数指定了 SSL/TLS 证书的路径和密钥文件的路径。原创 2023-07-18 13:15:41 · 637 阅读 · 0 评论 -
flask 1:flask项目入口文件与文件的拆分
入口文件完整体:注:在运行的时候,需要将PC上的Redis-server打开,要不然就会报错from flask import Flaskfrom flask_sqlalchemy import SQLAlchemyimport redisfrom flask_session import Sessionfrom flask_wtf import CSRFProtectapp = Flask(__name__)class Config(object): """配置信息"""原创 2020-12-10 13:42:41 · 686 阅读 · 2 评论 -
2. flask数据库迁移 问题解决:usage: manage.py [-?] {db,shell,runserve
本节继续数据库迁移与文件拆分原创 2020-12-11 13:58:16 · 2361 阅读 · 0 评论 -
flask项目实战之3:数据库设计
在项目实施之前,先要进行相关数据库的设计,选择不同的数据库模型,将注册的用户信息存入数据库。分为以下几项:用户(USER模型):user表里存储:user_id:主键mobile:passwordname:昵称real_name:id_card:avater_url:头像:保存的是图片链接House:house_id:主键(房间和用户相关,需要外键连接用户)user_id:外键title:prize:房价:area_id: 外键 连接地区表picture_index_u原创 2020-12-13 17:46:49 · 374 阅读 · 0 评论 -
flask项目之4:csrf验证与相关防护措施
CSRF验证:http://blog.youkuaiyun.com/wireless911/article/details/81589202从cookie中获取csrf_token的值从请求体中获取csrf_token的值如果两者相同就可以继续进行,异常就不进行验证同源策略:同源的网站才可以操作资源,...原创 2020-12-15 14:58:30 · 297 阅读 · 2 评论 -
flask学习之4:图片验证码
不多说,先盗图:图形验证码,请求图形验证码,接收请求,提取参数,校验参数 生成图形验证码因为图形验证码会更新很快,所以要存储图形验证码最好的选择是在redis数据库中存储作为该图形验证码的唯一ID:UUID(UUID是一个很长的字符串)或者是时间戳加随机数Redis里有 几种数据类型:哈希 :字符串涉及图形验证码部分的内容的实现也是通过一个单独的蓝图进行实现的蓝图文件名字:verify_code.py在蓝图中定义相关的功能,之后要在蓝图包的init文件内导入该文件,在前端关于验证码原创 2020-12-15 18:38:38 · 772 阅读 · 0 评论 -
flask项目之5:短信验证码发送
概述:短信验证码的发送需要限制验证码的发送间隔不能不停的发,因为测试时发送的验证码是要花钱的,不可能不花钱就办事短信验证码要根据图片验证码是不是正确再进行发,进行短信验证码的实验要测试容联云平台;然后将短信验证码的类设置为单例模式(每次实例化都是用的一个地址,不会产生新的类)1.容联云平台:2.单例模式3.验证码相关逻辑与实现位置容联云平台测试:http://yuntongxun.com/member/main点击开发文档,可以查看相关的开发文档,在这里主要用到的就是短信开发手册h原创 2020-12-16 11:46:08 · 1640 阅读 · 0 评论 -
flask项目之6:生产者消费者模型的celery异步实现
生产者与消费者的意思:生产者生成消息,缓存到消息队列中,消费者读取消息队列中的消息并执行。由商城生成发送短信消息,缓存到消息队列中,消费者读取消息队列中的发送短信消息并执行。为了将发送短信从主业务中解耦出去,我们要引入的是生产者和消费者设计模型,这是最常见的解耦方式之一,寻找中间人搭桥,保证两个业务没有直接关联。其中:生产者是flask项目 消费者是celery 中间人是Redis消息队列消费者取到消息之后,要消费掉(执行任务),需要我们去实现。任务可能出现高并发的情况,需要补充多..原创 2020-12-17 17:46:19 · 713 阅读 · 0 评论 -
flask项目之7:关于项目登录程序的运行逻辑
该项目为前后端分离的项目,前端完成了相关的操作,在登录的过程中,使用到了登录页面和注册页面,分别是两个不同的HTML,点击网页中的登录或注册,可以触发程序中的passport,传入相关的参数,在程序中进行了相关的验证,经过验证后确定是否可以登录和注册在获得内容之后依次进行以下判断,然后进入登录,passport:验证登录逻辑:使用到的资源:Redis数据库 数据库进行相关的判断通过获取HTML端的request,从里面抽取出json字典,对字典的数据进行相关的处理和判断相关代码:fro原创 2020-12-23 09:47:26 · 259 阅读 · 0 评论 -
flask项目之8:登录状态与退出登录
显示登录信息:在登陆逻辑的控制代码中定义函数:check_login和logout@api.route("/session", methods=["GET"])def check_login(): """ 检查登录状态 :return: 用户的信息或者返回错误信息 """ name = session.get('name') # print(name) if name is not None: return jsonify(原创 2020-12-24 12:28:46 · 1024 阅读 · 0 评论 -
flask项目之:番外总结
依旧是在写flask项目的相关内容,只是这个部分是在flask项目之外的总结,之前在看课程写代码部分有时会一头雾水,不知道这部分写了要干啥,于是越听越困,但是我重新看了一次笔记,觉得豁然开朗,原来与后端相关的代码都是围绕这个框架展开的。每一个功能的代码都是有这样的部分:请求方式:请求方法:GET POST PUT DELETE请求地址:url地址基本每一个后端功能都是要对应一个url地址的这里就要用到api.route装饰器,比如:@api.route("/users", method原创 2020-12-28 16:42:34 · 149 阅读 · 0 评论