1. HTTP有什么特点
- 简单快速: 客户向服务器请求服务时,只需传送请求方法和路径
- 灵活: HTTP允许传输任意类型的数据对象。正在传输的类型由 Content-Type 加以标记
- 无连接 :无连接的含义是限制每次链接只处理一个请求。服务器处理完客户的请求,并受到客户的应答后,即断开链接 (深入 ——持久链接、管线化)
- 无状态: HTTP协议是无状态协议(Cookie 的出现)
2. http 和 https 协议有什么区别
http :是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器请求和应答的标砖(TCP), 用于从 www 服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加的高效,使网络传输减少
https : 是以安全为目标的HTTP通道,简单讲是 HTTP 的安全版,即 HTTP 下加入 SSL层, HTTPS 的安全基础是 SSL , 因此加密的详细内容就需要 SSL
- http 是超文本传输协议, 信息是明文传输, https 则是具有安全性的 SSL 加密传输协议。
- http 和 https 使用的是完全不同的链接方式,用的端口也不一样,前者是 80 ,后者是 443。
- http 的链接很简单, 是无状态的; HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份
认证的网络协议,比 http 协议安全
3. 什么是HTTP持久化和管线化
出现背景:
HTTP 最初的版本中,每进行一次 HTTP 通信,就要断开一次 TCP 链接 (无连接 )
为了解决上述问题, HTTP / 1.1 增加了持久链接 (HTTP Persisitent Connections)的方法,其特点是, 只要一方未明确提出断开链接 ,则另一方保持 TCP 链接状态
管线化
管线化是指将多个 HTTP 请求整批发送,在发送过程中不用等待对方响应
管线化是在 持久链接的基础上实现的,管线化的实现,能够同时并行发送多个请求,而不需要一个接一个的等待响应
4. 理解http 报文
HTTP 报文是 面向文本的,报文中的没一个字段都是一些 ASCII 码串,各个字段的长度是不确定的。HTTP 有两类报文:请求报文和响应报文
HTTP的这 两种报文 都由 三部分组成:开始行、首部行、实体主体
5. 为什么利用多个域名来储存网站资源会更有效
- CDN 缓存更方便
- 突破浏览器并发限制
- 节约 cookie 带宽
- 节约主域名的连接数,优化页面响应速度
- 防止不必要的安全问题
6. 浏览器是由什么组成的
从原理构成上分为七个模块,分别是 用户界面(User Interface)、浏览器引擎(Browser engine)、渲染引擎(Rendering engine)、网络(Networking)、JS解释器(JavaScript Interpreter)、UI后端(UI Backend)、数据持久化存储(Date Persistence)
其中,最重要的是 渲染引擎(内核) 和 JavaScript解释器(JavaScript 引擎)
浏览器内核主要负责 HTML 、CSS 的解析,页面布局、渲染与复合层合成;JavaScript 引擎负责 JavaScript 代码解释与执行
7. 几个很实用的 BOM 属性对象方法
loaction 对象 :主要储存URL 相关信息
history 对象 :浏览器历史相关信息
- history.go() 前进或后退指定的页面数 history.go(number);
- history.back() 后退一页
- history.forward() 前进一页
navigator 对象 :浏览器信息相关
- navigator.userAgent 返回用户代理头的 字符串表示 (就是包括浏览器版本信息等的字符串)
- navigator.cookieEnabled //返回浏览器是否支持(启用) cookie
8. 谈谈对SEO的理解
SEO : 搜索引擎优化,其目的是为了使网站能够更好的被搜索引擎抓取,提高在搜索引擎内的自然排名,从而带来更多的免费流量,获取收益。
SEO 主要有两种方法,站内优化 和 站外优化
详细 前度SEO优化
9. 防抖和节流的区别
防抖 :任务频繁触发的情况下,只有任务触发的间隔超过指定间隔的时候,任务才会执行
节流: 指定时间间隔内只会执行一次任务
10. 页面重构怎么操作
页面重构就是根据原有页面内容和结构的基础上,通过 div+css 写出符合 web 标准的页面结构 。
具体实现要 达到以下三点:
- 功能不全页面的重构: 页面功能 符合用户体验、用户交互结构完整,可通过标准验证
- 代码重构 : 代码质量 、SEO优化 、页面性能 、 更好的语义化 、 浏览器兼容 、 CSS优化
- 充分考虑到页面在站点中的 “作用和重要性” , 并对其进行有针对性的优化