【发布时间】:2011-06-09 18:37:07
【问题描述】:
我创建了一个简单的 .aspx 页面,它在数据库中查询一些实时数据,然后返回 Content-Type application/json; charset=utf-8 的 JSONP(或最后类似 JSONP)提要
这里是输出的格式,或多或少:
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.
除以下内容外,一切正常。在我的开发环境和本地服务器上,每次都会有新的数据回来。但是在生产网络服务器上,数据顽固地缓存,直到我回收 IIS 应用程序池(!)
我尝试了一些没有成功的事情。
1/ cache: false in ajaxSetup 不起作用。
2/ 关闭 web.config 中的输出缓存。
2a/ 在 aspx 页面声明中的 OutputCache Location="None" 不会这样做。
3/ 向 .getJSON(url) 调用添加随机唯一查询字符串数据。看到我们如何为每个调用附加一个唯一的回调参数,我想这已经发生了。
知道为什么我的网络服务器会保留这些缓存的应用程序/JSON 文件吗?
编辑:我正在查看实际的 .aspx 提要,因为它们从 Web 服务器下来,并且它们被缓存在那里。所以据我了解,这是一个 Web 服务器缓存问题,不一定是 JQUERY 缓存问题。
【问题讨论】:
标签: jquery .net json iis jsonp