flask-全局变量

在Flask中管理用户登录状态,通常使用request、current_app、g和session。request对象包含HTTP请求信息但不持久;current_app与request生命周期相同;g变量适用于存储请求期间的数据,如数据库连接;而session则能在客户端的多次请求间保持数据,适合存储用户信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在我想实现用户在访问页面时候的登录状态时,想到了全局变量。flask中的全局变量有request,session,current_app,g。

在java中,我们通常用HttpSession在存储用户信息,那在flask中呢?

request

request是一次请求的内容,它包含了http请求信息,每次请求都会刷新,并不能为我们很好地储存内容。

current_app

他和request的生命周期是一样的。从请求开始时创建到请求结束销毁。同样地Flask在处理请求时就会push 一个request和应用上下文的代理实例,然后才可以使用。如果没有push就使用就会报错。

g

一个请求期间,我们可以使用g,比如当我们再一次请求中多次访问数据库,我们就可以将数据库的池放入到g当中,等待这个请求结束再关闭。

session

上面的g也就是global是一次请求,显然也不适合,那最适合的就是我们的session,他会在客户端的多次请求中存在,如果我们想在另一个请求中使用上一个请求的内容,那session就是不二之选。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值