我正在尝试在我的网站中缓存一些API响应(用web.py编写)。
因此,我希望在不同的Web服务器调用之间在服务器端的某处保存变量。
是存储此变量的最佳位置吗?
我实际上还没找到 - 我可以存储它们的地方。
由于我的index
对象似乎每次调用webapp都会重新初始化,因此无法将varable存储为属性。
如果我在初始化webapp的脚本中声明它们,我似乎也无法访问该变量。
cacheInfo = "something"
class Index:
def GET(self):
render.index(cacheInfo)
if __name__ == "__main__":
app.run()
答案 0 :(得分:1)
尝试使用pickle模块。它存储和检索文件中的变量。 CGI脚本在运行之间不会持久存在,因此您需要将数据存储在文件或数据库中。
答案 1 :(得分:1)
如果您需要存储全局状态,那么您可以使用数据库存储(web.db)并使用application processor在每个请求的web.ctx中保存查询。保存到db时,您可以使用pickle或json序列化数据。
如果您需要按用户存储,请在会话中保存数据(web.session)。
答案 2 :(得分:0)
我使用django进行网页开发,而不是关于web.py是如何工作的,但我认为你可以将它存储在会话上下文中,如果该变量是基于每个站点的访问者,则可以存储为cookie。