进我创建了查询的一些现场数据的数据库,然后返回一个JSONP(或最后一个JSONP样)的Content-Type application/json; charset=utf-8
如何防止.NET JSON被缓存
饲料这里简单的.aspx页面是输出的格式,或多或少:
jsonp1307643489579([
["12345","Text Here","99999","More Text Here","True","False","7/31","1"...],
["12345","Text Here","99999","More Text There",...]
]
然后是一个jQuery .getJSON电话:
var url = "myURL.aspx?id=123&callBack=?";
$.getJSON(url, null, function(msg) { etc etc.
这一切工作正常,除了以下。在我的开发环境和本地服务器上,每次新鲜数据都会现场返回。但在生产Web服务器上,数据固执地缓存,直到我回收IIS应用程序池(!)
有些事情我尝试过没有成功。
1/cache:false在ajaxSetup中不起作用。
2关闭web.config中的输出缓存。
2a/OutputCache Location =“None”在aspx页面声明中没有这样做。
3 /向.getJSON(url)调用添加随机唯一查询字符串数据。看到我们如何为每个呼叫添加一个唯一的回调参数,我想这已经发生了。
任何想法为什么我的Web服务器持有这些缓存的应用程序/ JSON文件?
编辑:我正在查看实际.aspx饲料,因为他们从Web服务器下来,他们被缓存在那里。所以据我的理解,这是一个Web服务器缓存问题,不一定是JQUERY缓存问题。
回答你自己的问题是完全可以接受的。如果你找到自己的答案,其他人可以从你发现的东西中受益。如果您认为自己发现了一些难以正常发现或不在正常的东西,甚至可以发布问题*以回答自己的问题。 – 2011-09-11 19:39:22
请你详细解释一下吗?一个回应告诉我你做了“等等”并没有真正的帮助 – spankmaster79 2015-03-02 13:09:02