19、flask-进阶-内置对象
内置对象
-
g
对象:- global 全局对象
- g对象是专门用来保存用户的数据的
- g对象在一次请求中的所有的代码的地方都是可以使用的
- 突变变量存储位置的限制,为函数传递添加了新的方式,比如我们在before_request产生一个数据在后面需要使用,可以保存在g对象中,就可以在其他视图中使用这个数据
-
requets
:- 请求对象,可以获取客户端提交过来的所有请求信息
-
session
:- 会话技术,服务端绘画技术的接口
-
current_app
:- app的配置信息。app对象获取,current_app
- 使用获取当前app需要注意,一定要在程序初始化完成之后
使用
views.py
import time from flask import Blueprint, request, g, current_app from .models import * from .exts import cache #导入 #创建蓝图(路由) blue = Blueprint('user', __name__) # 使用缓存cache @blue.route('/') # 给视图函数加缓存 20s,在第一次访问这个路由函数的时候,会调用视图函数,然后把返回值缓存起来,以后再访问这个路由函数的时候,直接从缓存中取值,不用再调用视图函数了 @cache.cached(timeout=20) def index(): print('index函数中的g.star的值是:',g.star) return 'index' # 钩子函数的使用 - 中间件 # before_request:每一次请求其他路由前都会先执行该函数 @blue.before_request def before(): print('before_request') # request对象 print(request.path) # 访问的路由 print(request.method) # 请求的方法 print(request.remote_addr) # 客户端的ip地址 # Flask的内置对象 # request :请求对象 # session :会话对象 # g :全局对象 # current_app :Flask应用对象 g.star = '杰伦' print(g.star) print(current_app) print(current_app.config)
本文作者:little小新
本文链接:https://www.cnblogs.com/littlecc/p/18328158
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
分类:
标签:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步