Jon*_*Lam 4 javascript php ajax caching
我是AJAX和缓存的新手.
在AJAX上 -从W3Schools 向服务器发送请求时,它表示您应该添加"?t=" + Math.random()脚本的URL末尾以运行以防止缓存.
在维基百科上,"缓存"的简单定义是:
在计算机科学中,缓存是透明地存储数据的组件,以便可以更快地提供对该数据的未来请求.存储在高速缓存中的数据可能是先前已计算的值,也可能是存储在其他位置的原始值的副本.
但是,这不应该更好吗?如果计算机已经存储了一些重复数据,脚本将运行得更快.此外,教程页面上的第一个示例,没有添加到URL,工作正常.
有人可以告诉我使用背后的原因"?t=" + Math.random()吗?
但是,这不应该更好吗?
是的,为了性能原因,最好有一个缓存系统,你的应用程序页面会快速加载,因为一次加载的元素将被检索,而不会每次都向服务器发出HTTP请求.
有人可以告诉我使用"?t ="+ Math.random()的原因吗?
添加它"?t=" + Math.random()就像每次重新加载脚本时重命名脚本的URL一样.缓存系统将其视为一个新元素,而不是像已经存储的旧元素,即使没有真正改变的东西.所以它迫使从服务器重新加载元素.
通常,我们可能希望对经常更新的元素(如图像,脚本)执行此操作.例如,用户可以更改的网站中的个人资料图片就是这种情况,如果旧图片文件在缓存中,如果我们不使用随机数的那个技巧,用户将不会立即看到新图片. .用户可能认为他的上传不起作用.他必须在浏览器中手动清空缓存,这并不总是非常直观.
第二个原因可能是在我们开发过程中这样做很好,因为我们不需要每隔几分钟清空一次我们的代码更改的缓存...
但是,不要在你确定不会改变或很少改变的元素上使用这个技巧.