假设Flask应用程序允许通过许多步骤(类似向导;客户端)构建对象(服务器端)。 我想创建一个初始对象服务器端,根据客户端输入逐步构建它,保持对象“活着”。贯穿整个构建过程。唯一ID将与每个新对象/向导的创建相关联。
在Apache上使用WSGI为Flask应用程序提供服务,请求可以通过Flask应用程序/多个线程的多个实例。
如何将此对象保持在服务器端,或者换句话说如何保持某种全局状态? 我喜欢将对象保留在内存中,而不是将其序列化/反序列化为磁盘。也没有饼干。
编辑:
我知道Flask.g对象,但由于这是基于每个请求,因此不是有效的解决方案。 也许可以使用某种缓存层,例如:
from werkzeug.contrib.cache import SimpleCache
cache = SimpleCache()
这是一个有效的解决方案吗?该层是否存在于多个应用实例中?
答案 0 :(得分:0)
你正在寻找会议。
您说您不想使用Cookie,但您是说您不希望将数据存储为Cookie或者您是否完全避免使用Cookie?对于前一种情况,请查看服务器端会话,例如Flask-KVSession
而不是在客户端上存储数据,只有安全生成的ID存储在客户端上,而实际的会话数据驻留在服务器上。