Python Google App Engine应用程序的响应是自动缓存的

时间:2014-06-12 16:46:38

标签: python google-app-engine caching

我上传了一个应用程序到Google App Engine,它将连接到另一个网站的REST服务,比如mydomain.com。

在前2个请求中,响应是正确的。但是,自第3次请求以来,响应始终与第2次请求相同。即使mydomain.com的REST结果有一些变化。

我检查了日志,发现我的Python模块似乎没有被撤销。响应来自缓存。我检查了一些材料。放置" no-cache"在响应标头或关闭NDB缓存没有帮助。但同样的事情发生了。

有谁知道如何关闭缓存?或者我需要在Python模块中添加一些代码,以便我的模块处理每个请求。

非常感谢!

我使用的代码如下。 print "Start ..."仅在前2个请求中执行。从第3个请求开始,print "Start ..."永远不会被执行。

class ReportServerHandlerJson(webapp2.RequestHandler):
    def post(self):
        print "Start ..."

        self.response.headers['Content-Type']='application/json'
        self.response.headers['Cache-Control']='no-cache,max-age=0'
        self.response.headers['Pragma']='no-cache'
        self.response.headers['Expires']='0'

        # fetch data via Rpt class method
        result=Rpt.GetResult()
        ....

更新

我想我找到了一些线索。似乎我通过Python请求模块发送的响应被缓存。我不确定它是由Python请求模块本身还是GAE缓存的。

仍在调查中。

0 个答案:

没有答案