Flask 上下文管理
内容回顾:
1. Linux命令
2. 面向对象: 特殊方法
1. `obj['x'] = 123`
2. `obj.x = 123`
3. `obj + 123`
-
functools
Python1 2 3 4 5 6 7def func(a1, a2, a3): return a1 + a2 + a3 v1 = func(1, 2, 3) new_func = functions.partial(func, 111, 2) new_func(3) -
你认识的装饰器?应用场景?
- 应用:
- flask:路由、before_request
- django: csrf、缓存、用户登录
- 应用:
-
Flask
-
threading.local(跟flask 没有关系) 1.
-
上下文管理
-
数据库连接池
\r\n
请求分开
把 \r\n 分开
request wsgi 把原生字符串进行分割

- 在源码中分析上下文管理
- 第一阶段: 将ctx(request, session)放到地上(local对象)
- 第二阶段: 视图函数导入: request/session
- 第三阶段: 请求处理完毕
- 获取session并保存到cookies
- 将ctx删除


-
在LocalProxy 中有各种python 双下划线用法
Python
|
|

视图函数引入包,LocalProxy代理,_loopup_req_object 反代,最后到localstack中的local找到对应的内容进行操作