3

我正在一个物业网站上工作,用户在其中创建列表,然后为了保存它,我们要求他通过 Facebook 连接。目前它工作得很好但是,当我创建另一个属性时(比如用户没有登录),后来我只是回到创建属性的页面,然后通过 facebook 连接.. 它确实登录了用户但是,没有创建属性..我尝试了各种方法,后来我发现一旦我清除浏览器缓存,它就会创建属性。

所以,我的问题是,如何使用 CakePHP 2.x 清除浏览器中的缓存?

另外,我尝试过:

纯 HTML:

<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>

但是,它没有帮助。有没有办法通过 CakePHP 本身来做到这一点?还是需要解决 Facebook 问题?

请指教。

PS:clearCache() does not work我不知道为什么。

4

2 回答 2

2

您可以使用CakeResponse::disableCache()

Example:

 <?php
        public function search() {
        // do something.
            $this->response->disableCache();
       }
于 2012-11-09T09:51:57.947 回答
2

除非您实际上是使用浏览器的人,否则您无法清除浏览器的缓存。(例如。File->Options->Clear Cache

您所说的只是告诉浏览器首先不要缓存您的页面-您似乎已经知道该怎么做。

但是一旦它被缓存,它就会被他们的浏览器缓存,而不是你的代码。这将是一个安全问题,并且很容易被滥用,以允许您删除用户缓存。

于 2012-11-09T15:10:21.657 回答