摘要: 上一篇文章我介绍了 HTTP/2 协议 ,它只有在 HTTPS 环境才会生效。 为了升级到 HTTP/2 协议,必须先启用 HTTPS。如果你不了解 HTTPS 协议(学名 TLS 协议),可以参考我以前的文章。 《HTTPS 协议概述》 《图解 HTTPS 协议》 《HTTPS 协议的七个误解》 阅读全文
posted @ 2018-11-14 11:36 heroljy 阅读(302) 评论(0) 推荐(0)
摘要: HTTP 协议是互联网的基础协议,也是网页开发的必备知识,最新版本 HTTP/2 更是让它成为技术热点。 本文介绍 HTTP 协议的历史演变和设计思路。 一、HTTP/0.9 HTTP 是基于 TCP/IP 协议的应用层协议。它不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式 阅读全文
posted @ 2018-11-14 11:35 heroljy 阅读(147) 评论(0) 推荐(0)
摘要: 工作中很多场景都需要避免浏览器缓存 一、请求时想要禁用缓存, 可以设置请求头: Cache-Control: no-cache, no-store, must-revalidate . 二、另一种常用做法: 给请求的资源增加一个版本号, 如下: 这样做的好处就是你可以自由控制什么时候加载最新的资源. 阅读全文
posted @ 2018-11-14 09:48 heroljy 阅读(1774) 评论(0) 推荐(0)
摘要: 缓存一直是前端优化的主战场, 利用好缓存就成功了一半. 本篇从http请求和响应的头域入手, 让你对浏览器缓存有个整体的概念. 最终你会发现强缓存, 协商缓存 和 启发式缓存是如此的简单. 导读 浏览器对于请求资源, 拥有一系列成熟的缓存策略. 按照发生的时间顺序分别为存储策略, 过期策略, 协商策 阅读全文
posted @ 2018-11-13 17:37 heroljy 阅读(211) 评论(0) 推荐(0)
摘要: 一、通过 referer、token 或者 验证码 来检测用户提交。 referer 的 metedata 参数可以设置为以下几种类型的值: 二、尽量不要在页面的链接中暴露用户隐私信息。 三、对于用户修改删除等操作最好都使用post 操作 。 四、避免全站通用的cookie,严格设置cookie的域 阅读全文
posted @ 2018-11-13 17:04 heroljy 阅读(152) 评论(0) 推荐(0)
摘要: 浏览器安全的基石是”同源政策”(same-origin policy)。很多开发者都知道这一点,但了解得不全面。 本文详细介绍”同源政策”的各个方面,以及如何规避它。 一、概述 1.1 含义 1995年,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。 最初,它的含义是 阅读全文
posted @ 2018-11-13 15:26 heroljy 阅读(255) 评论(0) 推荐(0)
摘要: 一、渲染引擎 浏览器的核心部分是渲染引擎,也称为浏览器的内核,负责对网页语法(如HTML、CSS、JavaScript等)的解释并显示网页。Firefox使用Geoko——Mozilla自主研发的渲染引擎,Safari和Chrome使用webkit内核。 二、webkit引擎渲染流程 1.渲染引擎首 阅读全文
posted @ 2018-11-13 14:52 heroljy 阅读(2218) 评论(0) 推荐(2)
摘要: DOMContentLoaded事件先执行,load事件后执行。 document.addEventListener('DOMContentLoaded', function () { console.log(1) }); window.onload = function () { console. 阅读全文
posted @ 2018-11-13 13:44 heroljy 阅读(205) 评论(0) 推荐(0)
摘要: html5拖拽 拖动我! 阅读全文
posted @ 2018-11-09 18:16 heroljy 阅读(141) 评论(0) 推荐(0)
摘要: 一、Chrome支持onbeforeunload、onpagehide、onunload,只是在这些方法执行的时候alert,console这些方法已经被注销了。 二、浏览器跳转、关闭、刷新时都按a,b,c,d,e的顺序执行 阅读全文
posted @ 2018-11-09 16:19 heroljy 阅读(1201) 评论(0) 推荐(0)