浅析http一些知识点

很早之前整理过http的一些知识点,今天重新整理了一下:
域名解析的阶段可以分为以下几个:
根据域名找到服务器的IP --> 发起TCP的3次握手 --> 建立TCP连接后发起http请求 --> 服务器响应http请求,浏览器得到html代码 --> 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等) --> 浏览器对页面进行渲染呈现给用户。

1.解析HTML结构。
2.加载外部脚本和css文件。
3.解析并执行脚本代码。
4.DOM树构建完成。(此时会触发DOMContentLoaded事件)
5.加载外部图片等文件。
6.页面加载完毕。(此时会触发load事件)
从以上DOM文档加载步骤上可以看出;当浏览器把DOM树构建完成后就开始触发了DOMContentLoaded事件,而load事件则要等包括图片这些加载完毕才会触发。
我们监听事件的时候把优先级高的可以先监听DOMContentLoaded再监听load。

浏览器几种请求
HEAD:向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。
GET:向特定的资源发出请求。
POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的创建和/或已有资源的修改。
PUT:向指定资源位置上传其最新内容。
DELETE:请求服务器删除Request-URI所标识的资源。
TRACE:回显服务器收到的请求,主要用于测试或诊断。
CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器

GET和POST本质上就是TCP链接
1.GET请求在URL中传送的参数是有长度限制的,而POST没有,
2.GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息
3.GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留GET请求会被浏览器主动cache,而POST不会,除非手动设置
4.对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送’*'的请求来测试服务器的功能性。

客户方错误
100  继续 101  交换协议
(成功) 200  OK 201  已创建 202  接收 203  非认证信息
204  无内容 205  重置内容 206  部分内容
(重定向) 300  多路选择 301  永久转移 302  暂时转移
303  参见其它 304  未修改(Not Modified) 305  使用代理
(客户方错误) 400 错误请求(Bad Request) 401未认证 402 需要付费
403禁止(Forbidden) 404未找到(Not Found) 405方法不允许 406不接受
407需要代理认证 408 请求超时 409冲突 410失败
411需要长度
( 服务器错误) 500 服务器内部错误 501 未实现(Not Implemented) 502 网关失败 504网关超时 505 HTTP版本不支持
503服务暂时不可用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值