解决方案
设置disableCaching
选项设置为false:
Ext.Ajax.disableCaching = false;
其他提示
使用Ext JS的4.1,并添加以下代码来app.js
之后,_dc
参数消失:
// Disable _dc parameter
Ext.Loader.setConfig({
disableCaching: false
});
// My App
Ext.application({
来实现,与煎茶Cmd的6.x的正确的方法是设置在一个app.json
(全局)开关(因为所有这些黑客和覆盖的可能与功能产生不必要的干扰):
"loader": {
"cache": true
},
然后运行sencha app refresh
,以更新应用程序的bootstrap.json
。
可替换地,一个可以配置Ext.Loader
(在运行时):
Ext.Loader.setConfig({disableCaching: false});
当向上滚动和读取实际问题,关于Ext.Ajax
(每个请求):
Ext.Ajax.request({url: '/ConnViewProcessing', disableCaching: false});
其结果是:没有对脚本的请求更_dc参数
。请注意,Ext.Loader 的使用在 ExtJS 5 中发生了变化。
在 ExtJS 5 中,可以禁用缓存:
- 暂时添加“
?cache
” 到 URL 末尾 - 通过设置一个名为“ext-cache”的 cookie,其值为 1
- 或通过编辑文件
.sencha/app/Boot.js
并设置'_config.disableCaching
' 属性为 true(覆盖动态查找)。
我使用ExtJS的4.2,但是这应该适用于Ext JS的4.1和。在代理有一个叫NOCACHE应将此设置为false属性。
Ext4.define('Server',{
extend: 'Ext4.data.Model',
fields: [
{name: 'id'},
{name: 'key'},
{name: 'value'}
],
proxy: {
type: 'rest',
url : 'yaddayaddayadda',
noCache: false,
reader : {
type: 'json'
}
}
});
原因我的代码表示的ext4。是因为我使用的沙箱模式作为我移动旧分机JS 3×代码到4.2
此应与ExtJS的4.0.7工作:
Ext.Loader.config.disableCaching = false;
设置标志 disableCaching
要 false
(双重否定-耶!) 在 Ext.数据。连接 应该做的伎俩。
更多,看看 disableCaching-文件。
(请注意,相当多的类Ext似乎有可供选择,所以你可能会有淤泥围绕一点。)
对于那些想要设置“disableCaching”的人:false” 在 Sencha Architect 3+ 中,具体方法如下:
在项目检查员窗口中,选择顶点“应用程序”
然后在您设置对象属性等的“配置”窗口中,选择“ Loader Config” ..就我而言 我必须点击右边的 " ",因为我没有设置任何 项目。这将在 "项目 检查员 "窗口;以我为例,Loader25。
现在,要么在“ Project Inspector”窗口中选择新对象,要么单击新的“ LoaderXx”(在我的情况下loader25)旁边的右箭头。这将带您进入对象的属性。
取消勾选“禁用缓存”项。
保存项目并刷新浏览器窗口,并在 Chrome 中享受持久断点等。
我能够在ExtJS的4.2.x版全球禁用_dc在我的项目的唯一方法:
Ext.define('Ext.data.Connection', {override:'Ext.data.Connection', disableCaching:false });
Ext.define('Ext.data.proxy.Server', {override:'Ext.data.proxy.Server', noCache:false });
Ext.define('Ext.data.JsonP', {override:'Ext.data.JsonP', disableCaching:false });
这是难看的,但任何其他的想法?
这是我如何这样做:
Ext.Ajax.request({
url: url,
disableCaching:false
});
我用Ext.NET上Ext.JS.的顶部它增加了一些巫术来Ext.js ... 我试图摆脱DC =参数,但所有提及的结构没有工作。所以,这是我的超级效益,超级脏溶液:
Ext.Date.now = function () { return ""; }
据我所看到的,Ext.Date.now()只用于高速缓存逻辑。所以它应该是相对性保存。
我决定,我想缓存被破坏客户端,但是服务器端我是用我自己的缓存机制(PHP的APC)。
余留在分机AJAX请求的_dc,但是然后从REQUEST_URI除去它,然后使用REQUEST_URI作为缓存键
的基础我发现这个有用:正则表达式,以除去一个参数从查询字符串
如果您在煎茶CMD发展,你可以像这样
http://localhost:1841/?disableCacheBuster
或只是
http://localhost:1841/?cache