前后端分离:
爱家项目笔记

爱家项目笔记

前后端分离为何要用Nginx?:
https://www.jianshu.com/p/801f503cc9ee

  1. 建立数据库:

爱家项目笔记
爱家项目笔记
爱家项目笔记

爱家项目笔记
数据库相关代码如下:
爱家项目笔记
2.网页的缓存,借助redis :
爱家项目笔记
然后:
爱家项目笔记
3.session:
session一般是放在:session服务器,但是如果放后端服务器会很慢,FLASK是放在前端浏览器cookie中的:
爱家项目笔记

所以:放在内存型的数据库中:Redis (见上图),
可以使用FLASK-SESSION 扩展:

爱家项目笔记

爱家项目笔记
爱家项目笔记
这个时候需要引入一个扩展:
爱家项目笔记
爱家项目笔记
导入SEESION:
爱家项目笔记

爱家项目笔记

爱家项目笔记
下面的这个USE_SIGNER 意思是要把前端的session ID隐藏一下,即是否对发送到浏览器上session的值进行加密:
爱家项目笔记
像配置数据库一样配置session :
爱家项目笔记
要注意的是,在实际当中,session 和缓存redis的服务器可能是两台,而不是下面的都用同一台:
爱家项目笔记
爱家项目笔记
如果不用上图的SESSION_PERMANET(永久有效),就需要设置一个有效期,比如一天:
爱家项目笔记
4. 前端的数据需要发给后端保存,需要发POST 请求给后端,这个时候需要添加防护,开启CSRF验证(这个简单机制是FLASK官方没有的带的):
CSRF机制是独立于WTF的的一个防护机制,独立于WTF表单可以直接拿来用,CSRFProtect实际上是一个类:

爱家项目笔记
爱家项目笔记

看下原始代码:
爱家项目笔记
目前为止,引入了以下3样东西:
爱家项目笔记
后面还有日志需要引进。
然后就可以往外去拆解了:
先把配置从manage.py拆出来:
爱家项目笔记

爱家项目笔记
吧create_app拆到__init__.py中:
爱家项目笔记
爱家项目笔记

相关文章: