- 保存用户登录状态 。例如将用户id存储于一个cookie内,这样当用户下次访问该页面时就不需要重新登录了,现在很多论坛和社区都提供这样的功能 。cookie还可以设置过期时间,当超过时间期限后,cookie就会自动消失 。因此,系统往往可以提示用户保持登录状态的时间:常见选项有一个月、三个 月、一年等 。
- 跟踪用户行为 。例如一个天气预报网站,能够根据用户选择的地区显示当地的天气情况 。如果每次都需要选择所在地是烦琐的,当利用了 cookie后就会显得很人性化了,系统能够记住上一次访问的地区,当下次再打开该页面时,它就会自动显示上次用户所在地区的天气情况 。因为一切都是在后 台完成,所以这样的页面就像为某个用户所定制的一样,使用起来非常方便
- 定制页面 。如果网站提供了换肤或更换布局的功能,那么可以使用cookie来记录用户的选项,例如:背景色、分辨率等 。当用户下次访问时,仍然可以保存上一次访问的界面风格 。
参考答案
XSS(跨站脚本攻击)是指攻击者在返回的HTML中嵌入JAVAscript脚本,为了减轻这些攻击,需要在HTTP头部配上,set-cookie:- httponly-这个属性可以防止XSS,它会禁止JavaScript脚本来访问cookie 。
- secure - 这个属性告诉浏览器仅在请求为https的时候发送cookie 。
8、浏览器和 Node 事件循环的区别?
参考答案
其中一个主要的区别在于浏览器的event loop 和nodejs的event loop 在处理异步事件的顺序是不同的,nodejs中有micro event;其中Promise属于micro event 该异步事件的处理顺序就和浏览器不同.nodejs V11.0以上 这两者之间的顺序就相同了.function test () {console.log('start')setTimeout(() => {console.log('children2')Promise.resolve().then(() => {console.log('children2-1')})}, 0)setTimeout(() => {console.log('children3')Promise.resolve().then(() => {console.log('children3-1')})}, 0)Promise.resolve().then(() => {console.log('children1')})console.log('end') }test()// 以上代码在node11以下版本的执行结果(先执行所有的宏任务,再执行微任务)// start// end// children1// children2// children3// children2-1// children3-1// 以上代码在node11及浏览器的执行结果(顺序执行宏任务和微任务)// start// end// children1// children2// children2-1// children3// children3-1
9、简述HTTPS中间人攻击参考答案
https协议由 http + ssl 协议构成,具体的链接过程可参考SSL或TLS握手的概述中间人攻击过程如下:
- 服务器向客户端发送公钥 。
- 攻击者截获公钥,保留在自己手上 。
- 然后攻击者自己生成一个【伪造的】公钥,发给客户端 。
- 客户端收到伪造的公钥后,生成加密hash值发给服务器 。
- 攻击者获得加密hash值,用自己的私钥解密获得真秘钥 。
- 同时生成假的加密hash值,发给服务器 。
- 服务器用私钥解密获得假秘钥 。
- 服务器用加秘钥加密传输信息
- 服务端在发送浏览器的公钥中加入CA证书,浏览器可以验证CA证书的有效性
参考答案
(1). 减少HTTP请求数这条策略基本上所有前端人都知道,而且也是最重要最有效的 。都说要减少HTTP请求,那请求多了到底会怎么样呢?首先,每个请求都是有成本的,既包 含时间成本也包含资源成本 。一个完整的请求都需要经过DNS寻址、与服务器建立连接、发送数据、等待服务器响应、接收数据这样一个“漫长”而复杂的过程 。时间成本就是用户需要看到或者“感受”到这个资源是必须要等待这个过程结束的,资源上由于每个请求都需要携带数据,因此每个请求都需要占用带宽 。
另外,由于浏览器进行并发请求的请求数是有上限的,因此请求数多了以后,浏览器需要分批进行请求,因此会增加用户的等待时间,会给 用户造成站点速度慢这样一个印象,即使可能用户能看到的第一屏的资源都已经请求完了,但是浏览器的进度条会一直存在 。减少HTTP请求数的主要途径包括:
推荐阅读
- 黑茶天尖是什么茶?
- AMD|AMD Zen4锐龙“龙凤胎”来了:55W功耗、游戏本终于满血
- 三星|旗舰机要换代了!UFS 4.0闪存正式发布:读取可达4200MB/s、速度翻番
- 想摸鱼吗?先掌握这 19 个 css 技巧
- 靠着5个自媒体,新手小白如何赚取第一桶金?
- mysql误删除恢复
- Window查看和杀掉进程
- C++可变参模板
- 路虎|路虎极光“GTA”式越野 一飞冲天!结果惨了:减震、悬架全报废
- 私处面相看你能否聚财