大家为什么不使用rest风格? 理论是理论,实际是实际理论上这种思想是非常优秀的,实际上我们一定要有所选择,rest的使用场景有所局限。内部开发开放api标准的api适合去做开放型的api,不适合做内部开发的api情景:假如我们接到了一个项目,要写小程序。 你写前端,我写服务器的api,然后小程序要去调用api,那么这个api就属于内部开发api.情景:豆瓣,微博,github,所提供给开发者的api都属于开放...
flask蓝图?蓝图的用处及缺陷 蓝图:是为了处理模块的拆分。而不是视图函数级别的拆分。非处理试图函数级别的拆分造成url冗长。蓝图的使用:在试图函数部分:from flask import Blueprintbook = Blueprint(“book”, --name–)接下来拿book替代app就可以了在app和蓝图连接时app.register_blueprints(蓝图),连接成功。所以我们要自制...
django+nginx+uwsgi部署 准备东西:自己买的服务器,自己的代码检验是否自带python,有些带了有些没带,如果没自带的话: # 下载python wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0a1.tar.xz # 解压 tar xvf Python-3.6.0a1.tar.xz # 配置安装地址(Linux中与windows中不...
flaks_数据库优化 面试时:对于数据库的优化,或者想提高网站的并发性的时候,你会从哪些角度进行优化问题:数据库的优化,网站的并发构建------>直到变为庞杂的数据库构建数据库表时我们就要考虑到日后的扩展问题和查询的快慢问题。三范式原则:第一范式:拆的不能再拆。第二范式:出现大量的冗余数据。非主要的字段全部提出来,可以分表第三范式:非主要的表中,有没有因为一个人的数据,丢掉了类型的信息。...
常用列表搜索 搜索条件一般都具备组合性。多个条件进行限制时,需要进行详细区分。排序结果:最新上线:房屋的上架时间入住最多:订单量价格(低–>高):由价格进行排序价格(高–>低):有价格进行排序房源区域信息:筛选不同房源的信息足以。入住时间:订单当中出现了时间,代表不能入住。所以除了这个时间,其他时间都可以进行入住。(寻找订单中所排除的时间之外的房子)...
flask_celery 安装pip install -U Celery认识:生活中的例子:我去楼下扔垃圾,扔到垃圾桶后保洁阿姨把垃圾分类掉,清空。这,就是celery客户端:发布任务一方eg:django/flask/自己写程序工作者(worker): 真正执行工作的这一方。具备多任务处理。具有多进程/协程。协程库:gevent /greenlet,默认是在多进程中工作的。可以理解为进程池的模式。任务队...
缓存机制的介绍+缓存数据同步 当一个借口是被频繁访问的,我要获取的数据不经常被变化。如果每次访问都通过查询数据库,会导致速度变慢。解决办法:引入缓存。在第一次查询出来后就找变量缓存出来。第二次被访问时,先去寻找变量中是否存在需要的数据,如果有,直接进行引用,如果没有,就重新发起请求。我们通过redis数据库进行存储。步骤:先尝试从redis中获取数据如果redis中有数据,则直接返回如果没有数据,则去数据库中再...
文件存储解决方案(图片或文件) 1.自己搭建文件存储系统。 FastDFS 快速分布式文件系统,主要用于电商网站存储图片、HDFS Hadoop分布式文件存储系统,任何文件都好。2.选择第三方服务 主要:七牛云存储:专门解决文件存储问题。...
用户登录,登出总结 @api.route("/sessions", methods=["POST"])def login(): """ 用户登录 参数:用户手机号、密码 json :return: """ # 获取参数 req_dict = request.get_json() mobile = req_dict.get("mobile") password = req_dict.get("pas...
用户注册逻辑的实现 1.基本的注册逻辑实现2.这里代码给的是用户进入页面,已经输入了图片验证码,由于前面代码逻辑比较简单,代码就不上了,逻辑上来说就是用户进入注册页面,输入手机号码,输入图片验证码,前端生成验证码唯一编码,通常使用uuid,通用唯一标识符,或者使用Linux时间戳向后台后台请求验证码图片,后台生成验证码,并将验证码编码和验证码存入数据库中(一般使用内存级数据库).3.接下来是用户输入手机号,点击获...
flask_用户注册+密码加密 名为passport.py依旧存在:密码为加密以及创建用户时没有传入密码的问题。from flask import current_app, request, jsonify, sessionfrom . import apifrom ihome.utils.response_code import RETfrom ihome import redis_store, dbfrom ih...
flask_发送短信——云迅通(2) 直接贴代码# GET /api/v1.0/sms_codes/<mobile>?image_code=xxx&image_code_id=xxx@api.route("/sms_codes/<re(r'1[23578]\d{9}'):mobile>")def get_sms_code(mobile): """获取短信验证码"""# 获取参数image_c...
flask_实现路由匹配器和蓝图 Flask自带的匹配器可以说有四种动态路由本身,可以传任何参数字符串或者数字,如:只能传整形数字,如:int:user_id只能传浮点型数字,如:float:num只能传path路径,如:path:url以往的:from flask import Flask app = Flask(__name__)@app.route('/user/<int:user_id>'...
flask_发送短信——云迅通(1) 使用服务:容联云 www.yuntongxun.com注册完成后,有赠送的8块钱可以使用内部需要添加测试号码以及有测试模板使用教程: 开发文档------> 短信发送接口更改下载出来的文件 ,改为python3可用版本https://blog.csdn.net/qq_42795565/article/details/87604663将SendTemplateSMS的py文件也拿...
flask_图片验证码 使用redis进行保存redis数据结构使用字符串redis中保存真实验证码号以及验证码编号,编号由前端使用uuid生成,发送给后端文件在https://pan.baidu.com/s/1ltcDzwwN-2OsPwNN03x3zw 中的captche中将文件放置在utils目录中,captcha中有使用方法,只需要调用接口并且使用即可。目的:生成接口,并且连接redis数据库进...
flask_图片验证码的使用流程 前端向后端发起获取图片验证码的请求(在登录或注册页面)服务器生成验证码图片及保存验证码真实值;将验证码图片进行返回在发起短信验证码的请求时,对图片验证码进行验证正确性,如果正确,可以发送短信验证码细节问题:Q:如何才能够验证图片验证码的正确性?A: 携带参数,包含用户填写的图片验证码;图片验证码的编号。Q:验证码的真实值有有效期,所以放在哪?A: 将验证码的真实值存到redis中...
flask常用扩展包 Flask-SQLalchemy:操作数据库;Flask-script:插入脚本;Flask-migrate:管理迁移数据库;Flask-Session:Session存储方式指定;Flask-WTF:表单;Flask-Mail:邮件;Flask-Bable:提供国际化和本地化支持,翻译;Flask-Login:认证用户状态;Flask-OpenID:认证;Flask-RESTf...
构建模型类 1.用户信息user_id (pk)phonepasswordusernameavtory(头像:存放的是路径)real_namereal_idcard2.商品(house)house_id (pk)user_id(房东的id) 作为用户表的idtitle(房子标题)area(城区) 作为城区表的外键…priceindex_image_url 查询时方便order_...
lask简单配置信息(2) D:.Ihome├─.idea├─ihome│ ├─api_1_0│ │ └─__pycache__│ ├─libs│ ├─static│ ├─utils│ └─__pycache__├─logs└─__pycache__和ihome同级的还有manage 和 configmanage:只负责启动文件,所以内部:from ihome import creat...
flask简单配置信息 #mysql数据库from flask import Flaskfrom flask_sqlalchemy import SQLAlchemyclass Config: """配置信息""" DEBUG = True SECRET_KEY = "1" # 数据库 SQLALCHEMY_DATABASE_URI = "mysql://root:mysql@127.0.0.1:3...