开发时发现odoo10内有和http.py文件,内部包含一个方法是用来管理session有效期的
代码如下:(路径为:odoo10\odoo\http.py)
def session_gc(session_store):
if random.random() < 0.001:
# we keep session one week
last_week = time.time() - 60*60*24*7
for fname in os.listdir(session_store.path):
path = os.path.join(session_store.path, fname)
try:
if os.path.getmtime(path) < last_week:
os.unlink(path)
except OSError:
pass
代码解释:
注意:每一次请求都会通过这里,因此才有一下的解释
1、这里的 if random.random() < 0.001:表示,当出现随机数小于0.001时就进去检查这个seesion的有效期是否超过设置值,如果超过就删除,需要用户重新登录。
2、这里的last_week 表示设置seesion有效期为一周的时间