就算是设置了 cache: true, ifModifided true
在请求js文件时总是会在url后带一个随机数, 导致不能使用缓存文件.
请问:
1 可有不修改js源码, 不使用其它库的解决方案?
2 如果不能在前端解决, 那么可以通过nginx配置解决么?
在请求js文件时总是会在url后带一个随机数, 导致不能使用缓存文件.
请问:
1 可有不修改js源码, 不使用其它库的解决方案?
2 如果不能在前端解决, 那么可以通过nginx配置解决么?
1
binux May 23, 2012
你在哪设置的cache: ture?
try: $.ajax({ type: 'GET', dataType: 'script', url: "http://127.0.0.1/asdf.js", cache: true, }) |
2
ylfighter May 23, 2012
随机数不是你自己加的么?
|
3
Julyyq May 23, 2012
去掉随机数不就可以缓存了吗?
|
4
sdjl OP 我用的是 $.ajax({cache:true,...})
他会有一个随机数, 但是我不想要这个随机数 |
6
aligo May 23, 2012
ajax请求就是故意要那个随机数的啊。。。
如果每次的结果都一样就不需要ajax啊 我觉得你需要的应该不是getScript而是RequireJS |
7
pppanda May 23, 2012
默认没有时间戳(随机数)的吧,可能是哪里配置的问题
|
8
aa88kk May 23, 2012
你的CACHE应该在其他地方设置过, 否则为false的话,肯定不会添加时间戳.
|
9
reaky May 23, 2012
"Be default, $.getScript() sets the cache setting to false."
http://api.jquery.com/jQuery.getScript/ 你肯定是没有设置对,仔细看看. 试过cache为false有,为true是没有的. |
10
sdjl OP 谢谢大家了, 已经解决了, 我在调用$.ajax之前用
$.ajaxSetup({ cache: true }); 设置后就没有随机数了, 不过我觉得很奇怪啊, 调用ajax这个函数的时候我明明指定了 cache:true的... :) |
11
sdjl OP 顺便说, 我主要是在做 http://lengxiaohua.com 这个网站遇到这个问题的~~~等我回头压缩一下js...
|