在flask中构建的web应用程序在应用程序引擎上不稳定



我在应用程序引擎上上传了一个python flask应用程序,在登录后的页面上我在其中使用了会话,该应用程序在我的本地计算机上运行良好,没有任何错误,但我的应用程序在应用程序机上运行不同,当我看到日志时,我意识到应用程序引擎在任何时候都会自动清除会话cookie。我不知道为什么会发生这种情况,因为应用程序在我的本地计算机上运行得很好。当应用程序引擎清除我的会话时,程序会将我重定向到登录页面,如果根据我的loginrequired decorator清除了会话,这是必要的所以请给我这个应用程序引擎错误的解决方案

装饰器函数:-

def login_requested(f):@包裹(f)def deco_function(*args,**kwargs):打印("hii")打印(会话)如果会话中存在"loggedin":返回f(*args,**kwargs)return redirect(url_fo('login'))返回去功能(_F)

登录路径:-

@app.route("/",methods=["GET","POST"])def-login():

if request.method == 'POST':
if bcrypt.checkpw(request.form['password'].encode('utf-8'), hashed_pass.encode('utf-8')) and (request.form['user_name'] == firebase_user_name) :
session['loggedin'] = 'admin'
print(session)
return redirect(url_for('dashboard'))
flash('Username or password incorrect')
return render_template('login.html')

session['loggedin'] = 'admin'实际做什么?这是在设置cookie吗?

我正在运行flask,并在我的登录处理程序中调用这个set_session_cookie函数:

from werkzeug.http import dump_cookie
def set_session_cookie(response, cookies_value, max_age=DEFAULT_MAX_AGE):
cookie = dump_cookie(
'my_cookies_name',
cookies_value,
max_age=max_age,
secure=True,
)
response.headers.add('Set-Cookie', cookie)

然后在我的login_required装饰器中,我执行request.cookies.get('my_cookies_name', None)以检索cookies_value,然后验证cookies_value

相关内容

  • 没有找到相关文章

最新更新