我正在建立一个用户创建列表的房产网站,稍后保存,我们要求他通过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
我不知道为什么。
答案 0 :(得分:2)
您可以使用CakeResponse::disableCache()
Example:
<?php
public function search() {
// do something.
$this->response->disableCache();
}
答案 1 :(得分:2)
除非您实际上是使用浏览器的缓存,否则无法清除浏览器的缓存。 (例如File->Options->Clear Cache
)
您所说的只是告诉浏览器首先不要缓存您的页面 - 您似乎已经知道该怎么做了。
但是一旦它被缓存,它就被他们的浏览器缓存,而不是你的代码。这将是一个安全问题,并且很容易被滥用以允许您删除用户缓存。