Python 防止Google应用程序引擎中的页面缓存

Python 防止Google应用程序引擎中的页面缓存,python,google-app-engine,caching,Python,Google App Engine,Caching,当我的GAE应用程序的用户单击后退按钮时,我需要防止他们看到页面的缓存版本——也就是说,我需要pythonget或post代码来运行该url 这个问题似乎与谷歌应用程序引擎毫无关系。尽管如此,我发现: <meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate"> 希望能对您有所帮助。chachan提供的答案不会在所有浏览器中都适用。一个更完整的答案可以在中找到。基本上,您

当我的GAE应用程序的用户单击后退按钮时,我需要防止他们看到页面的缓存版本——也就是说,我需要python
get
post
代码来运行该url

这个问题似乎与谷歌应用程序引擎毫无关系。尽管如此,我发现:

<meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate"> 


希望能对您有所帮助。

chachan提供的答案不会在所有浏览器中都适用。一个更完整的答案可以在中找到。基本上,您需要设置所有这些标题:

<meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="0">


告诉浏览器始终从服务器获取页面。

有时在元标记中设置缓存不是您想要的,设置http标头更方便。这在Python中很容易做到:

self.response.headers[“Pragma”]=“无缓存”

self.response.headers[“缓存控制”]=“没有缓存,没有存储,必须重新验证,预检查=0,后检查=0”

self.response.headers[“Expires”]=“Thu,1994年12月1日16:00:00”


Goole在这里有一个关于如何使用Response类的很好的文档:

感谢所有的答案!我问这个问题主要是因为互联网文档表明设置Pragma等是无效的,需要一个更强大(未指定)的服务器端解决方案。这些解决方案非常可靠吗?嗯,我链接的答案中的向上投票数似乎表明它是可靠的我的应用程序中也有类似的要求(我有一个客户端浏览器不能缓存的RESTAPI),所以我遵循了答案中的建议,到目前为止它对我有效。我建议您自己尝试一下,并通过监视应用程序引擎仪表板中的日志来验证它是否有效。缓存页面根本不会显示为请求,或者显示为HTTP状态304(未修改)作为响应。谢谢。这似乎在我能够测试的所有情况下都有效。