javascript文件在IE缓存中的迷惑与解惑实验

简介: 缓存迷惑:项目中用到了股票代码的输入框,想使用经典ajax效果——自动完成。 可是与头头讨论时,头头觉得一输入字符就要服务器相应,而且预计的使用人数有点大的情况下,太耗服务器资源了。说服不了头头,只有采用变通的方式,把代码表放到js里,使用纯js实现自动完成功能。

缓存迷惑:
项目中用到了股票代码的输入框,想使用经典ajax效果——自动完成。

可是与头头讨论时,头头觉得一输入字符就要服务器相应,而且预计的使用人数有点大的情况下,太耗服务器资源了。
说服不了头头,只有采用变通的方式,把代码表放到js里,使用纯js实现自动完成功能。头头勉强接受。

网上搜索了一圈,发现不少比较好的使用例子,例如:
http://www.javascript-examples.com/autocomplete-demo/

有个疑惑的地方,用户打开页面时,代码表js下载到了本地缓存,如果第二天代码表js内容变了的话,页面打开时,IE会读取缓存里的那个js文件,还是下载新的这个呢?
但是如果禁止了客户端缓存的话,一天内多次打开此页面会不会每次重新下载,给用户的感觉又很慢呢?

传言:
听到一个传言,说ie打开网页时会自动检查那个js文件的发布时间,如果与缓存里不一致,就会下载新的。是否有这个说法啊?

解惑实验:
经过自己的测试,好像那个传言是真的。
做了一下测试,用iis建了一个普通网站,让页面内嵌入使用了一个js。
同时打开ie缓存路径进行文件监视

测试1:ie首次打开网页时,js被down到缓存文件夹。上次修改时间、上次访问时间、上次检查时间,这三个属性的值是一致的。

测试2:隔了一分钟,更改了js文件,ie再此打开这个网页,检查到上次修改时间、上次访问时间、上次检查时间,这三个属性的值又是一致的。

测试3:再隔了一分钟,没有更改js文件,ie再此打开这个网页,检查到上次访问时间、上次检查时间,这两个属性的值是一致的,为打开时的时间,但是上次修改时间显示为1分钟前。

实验结果大致认为:ie打开网页时,会检查js文件是否更新,更新的情况下下载新的文件到缓存,如果文件保持不变的话,不重新下载。

目录
相关文章
|
JavaScript API
深入探索fs.WriteStream:Node.js文件写入流的全面解析
深入探索fs.WriteStream:Node.js文件写入流的全面解析
|
3月前
|
编解码 JavaScript 前端开发
如何在网页播放英文的m3u8文件(基于Javascript搭建的在线网页工具)
什么是m3u8?又该如何在网页中高效、便捷地播放英文的m3u8文件呢?今天这篇文章就带你一起了解,并推荐一种基于Javascript搭建的在线网页工具,让你轻松解决播放问题。
845 0
|
Rust JavaScript 前端开发
Node.js 添加对 TypeScript 的实验性支持
Node.js 添加对 TypeScript 的实验性支持
257 53
|
缓存 JavaScript 前端开发
Java 如何确保 JS 不被缓存
【10月更文挑战第19天】在 Java 中,可以通过设置 HTTP 响应头来确保 JavaScript 文件不被浏览器缓存。方法包括:1. 使用 Servlet 设置响应头,通过 `doGet` 方法设置 `Expires`、`Cache-Control` 和 `Pragma` 头;2. 在 Spring Boot 中配置拦截器,通过 `NoCacheInterceptor` 类和 `WebConfig` 配置类实现相同功能。这两种方法都能确保每次请求都能获取到最新的 JavaScript 内容。
145 1
|
JavaScript 前端开发 内存技术
js文件的入口代码及需要入口代码的原因
js文件的入口代码及需要入口代码的原因
166 0
|
缓存 JavaScript 中间件
优化Express.js应用程序性能:缓存策略、请求压缩和路由匹配
在开发Express.js应用时,采用合理的缓存策略、请求压缩及优化路由匹配可大幅提升性能。本文介绍如何利用`express.static`实现缓存、`compression`中间件压缩响应数据,并通过精确匹配、模块化路由及参数化路由提高路由处理效率,从而打造高效应用。
522 95
|
JavaScript 前端开发 API
Next.js 实战 (六):如何实现文件本地上传
这篇文章介绍了在Next.js中如何实现文件上传到本地的方法。文章首先提到Next.js官方文档中没有提供文件上传的实例代码,因此开发者需要自行实现,通常有两种思路:使用Node.js原生上传或使用第三方插件如multer。接着,文章选择了使用Node.js原生上传的方式来讲解实现过程,包括如何通过哈希值命名文件、上传到指定目录以及如何分类文件夹。然后,文章展示了具体的实现步骤,包括编写代码来处理文件上传,并给出了代码示例。最后,文章通过一个效果演示说明了如何通过postman模拟上传文件,并展示了上传后的文件夹结构。
328 0
Next.js 实战 (六):如何实现文件本地上传
|
前端开发 JavaScript API
前端JS读取文件内容并展示到页面上
前端JavaScript使用FileReader API读取文件内容,支持文本类型文件。在文件读取成功后,可以通过onload事件处理函数获取文件内容,然后展示到页面上。
464 2
前端JS读取文件内容并展示到页面上
|
缓存 JavaScript CDN
一次js请求一般情况下有哪些地方会有缓存处理?
一次js请求一般情况下有哪些地方会有缓存处理?
155 4
|
JavaScript 前端开发 数据安全/隐私保护
混淆指定js文件
【9月更文挑战第26天】JavaScript 混淆旨在保护代码知识产权、减小文件体积和提高安全性。方法包括变量名和函数名混淆、代码压缩、控制流平坦化及字符串加密。常用工具如 UglifyJS 和 JScrambler 可实现这些功能。然而,混淆可能带来兼容性和调试困难等问题,需谨慎使用并确保法律合规。
216 5

热门文章

最新文章

下一篇
oss云网关配置