您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – Flask会话变量在请求之间不存在

5b51 2022/1/14 8:22:49 python 字数 2912 阅读 557 来源 www.jb51.cc/python

使用下面的应用程序和Flask 0.11.1,我导航到与以下函数调用关联的路由,给定结果: > create():’1,2,3’#OK >删除(1):’2,3’#OK >删除(2):’1,3’#expected’3′ > maintain():’1,2,3’#expected’1,3’或’3′ from flask import Flask, session app = Flask(__name

概述

> create():’1,2,3’#OK@H_502_3@>删除(1):’2,3’#OK@H_502_3@>删除(2):’1,3’#expected’3′@H_502_3@> maintain():’1,3’#expected’1,3’或’3′

from flask import Flask,session

app = Flask(__name__)

@app.route('/')
def create():
    session['list'] = ['1','2','3']
    return ",".join(session['list'])

@app.route('/m')
def maintain():
    return ",".join(session['list'])

@app.route('/r/<int:id>')
def remove(id):
    session['list'].remove(str(id))
    return ",".join(session['list'])

if __name__ == '__main__':
    app.secret_key = "123"
    app.run()

这个问题在主题上类似于this question,thisthis one,但是我设置了密钥而没有重新生成它,我的变量肯定不大于cookie允许的4096字节.也许我错过了一些关于Flask会话变量的基本理解?

它只会在您设置或删除密钥时注册修改.在这里,您可以修改它不会检测到的值.试试这个:

@app.route('/r/<int:id>')
def remove(id):
    val = session['list']
    val.remove(str(id))
    session['list'] = val
    return ",".join(session['list'])

…和其他更改相同,或者您可能尝试自己设置session.modified = True而不是触发检测.

总结

以上是编程之家为你收集整理的python – Flask会话变量在请求之间不存在全部内容,希望文章能够帮你解决python – Flask会话变量在请求之间不存在所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶