jQuery中的cache : false到底有什么用?
作者:互联网
写Ajax代码写了很多,但事实证明,编程水平的高低不在于代码有没有写很多遍,而在于有没有动脑子去思考。
很显然,我在jQuery的cache : false
问题上面就没有动脑子思考过,直到今天才后知后觉。
以前,为了确保每一个Ajax请求不被缓存,于是在Ajax的请求URL后加上"?rand=" + Math.random(),
,完全忽略了cache : false
的感受。
现在,我重新认识到,在type : 'GET'
的情况下cache : false
本身要做的工作就是在请求URL后添加一个随机时间戳:
好吧,我以前是多么的愚蠢!
另外,在type : 'POST
的情况下,cache : false
就不需要指定了,因为post请求本身就不会参与缓存。
比较 | GET | POST |
---|---|---|
后退按钮/刷新 | 无害 | 数据会被重新提交(浏览器应该告知用户数据会被重新提交)。 |
书签 | 可收藏为书签 | 不可收藏为书签 |
缓存 | 能被缓存 | 不能缓存 |
编码类型 | application/x-www-form-urlencoded | application/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。 |
历史 | 参数保留在浏览器历史中。 | 参数不会保存在浏览器历史中。 |
对数据长度的限制 | 是的。当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。 | 无限制。 |
对数据类型的限制 | 只允许 ASCII 字符。 | 没有限制。也允许二进制数据。 |
安全性 | 与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。 | 在发送密码或其他敏感信息时绝不要使用 GET ! POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。 |
可见性 | 数据在 URL 中对所有人都是可见的。 | 数据不会显示在 URL 中。 |
好了,现在是时候把以前在代码里写的错误修复一下了。
最近,有不少读者问我是怎么学习的,那我干脆就把我看过的一些优质书籍贡献出来:
-
计算机基础入门推荐:《程序是怎样跑起来的》、《网络是怎样连接的》、《计算机是怎样跑起来的的》
-
进一步认识计算机网络:《计算机网络:自顶向下》、《图解http》
-
数据结构+算法入门:《大话数据结构》、《阿哈算法》
-
算法进阶:《算法第四版》、《编程珠玑》
由于我是 Java 技术栈的,顺便推荐几本 Java 的书籍,从左到由的顺序看到
-
Java:《Java核心技术卷1》、《编程思想》、《深入理解Java虚拟机》、《effective Java》、《Java并发编程的艺术》
-
数据库:《mysql必知必会》、《MySQL技术内幕:InnoDB存储引擎》
就先介绍这么多,这些都是最基础最核心的,希望对那些不知道看什么书的同学有所帮助。
对了,我介绍的这些书籍,已经顺便帮你整理好了,你可以在我的原创微信公众号『沉默王二』回复『书籍』获取哦
有收获?希望老铁们来个三连击,给更多的同学看到这篇文章
1、老铁们,关注我的原创微信公众号「沉默王二」,专注于有趣有益的程序人生,保证你看完有所收获,不信你打我。
2、给二哥点个赞呗,可以让更多的人看到这篇文章,顺便激励下我,嘻嘻。
作者info
作者:沉默王二,CSDN 2019年度博客之星,《Web全栈开发进阶之路》作者
原创公众号:『沉默王二』,已写了 250 多篇文章,专注于有趣的 Java 技术和有益的程序人生,期待你的关注。
转载说明:务必注明来源(注明:来源于公众号:沉默王二, 作者:沉默王二)
标签:jQuery,Java,GET,URL,cache,王二,false 来源: https://blog.51cto.com/u_2324584/2936681