前后端分离:
前后端分离为何要用Nginx?:
https://www.jianshu.com/p/801f503cc9ee
- 建立数据库:
数据库相关代码如下:
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中: