2010-05-13 64 views
3

我有一个非常简单的应用程序在appengine上运行,每隔五分钟请求一个网页并解析特定的一段数据。除了响应我从外部请求(使用的urllib2)没有反映到页面的最新变化找回Google是否缓存外部请求?

,一切工作正常。有时需要几分钟才能获得最新的信息,有时需要一个多小时。

是否有一个透明的缓存appengine放置层?还是有什么我在这里失踪?我查看了请求页面的缓存标题,并且没有发送Expires,LastModified或ETags标头。

更新: 有时候,它会为许多请求获取新版本的页面,然后随机获得旧的过期版本。

回答

8

看来,这是一个问题在App Engine team is aware of。建议的解决方法是设置与max-age的Cache-Control头在几秒钟:

result = urlfetch.fetch(url, headers = {'Cache-Control' : 'max-age=240'}) 

应该有希望为你工作。