ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
访问控制用于用户未登录时打开任意链接都会跳转到登录页面,而登录过的用户打开登录页面时会自动定向到登录页面 原理就是在每个请求处理函数前加上装饰器 在模块下的初始化方法中定义装饰器函数 未登录跳转到登录页面 ~~~ from flask import session, redirect, url_for import functools def login_require(fun): @functools.wraps(fun) def wrapper(*args, **kw): if 'userid' not in session or session['userid'] is None: return redirect(url_for('admin.login')) return fun(*args, **kw) return wrapper ~~~ 在控制器中引入此方法,并在请求处理函数前使用此装饰器 在登录函数前使用另外一个装饰器 ~~~ from flask import redirect, url_for, session import functools def require_login(fun): @functools.wraps(fun) def wrapper(*args, **kw): print(session) if 'userid' in session and session['userid'] is not None: return redirect(url_for('admin.index')) return fun(*args, **kw) return wrapper ~~~