有事没事领个红包

计算机网络分层以及常见状态码

1 TCP/IP 协议簇按层次分为应用层、网络层、传输层、数据链路层

1.1 应用层:为用户提供服务。比如 FTP(file  transfer protocol)和 DNS(domain name system)

1.2 传输层:提供出于网络连接中的两台计算机之间的数据传输。传输层有两个协议 TCP(transmission control protocol)传输控制协议 和 UDP (user data protocol)用户数据报协议

1.3 网络层:处理在网络上流动的数据包。数据包是网络传输的最小单位。该层规定了通过怎样的路径到达对方计算机。

1.4 链路层:用来处理链接网络的硬件部分。包括控制操作系统、硬件的设备驱动、NIC(Network Interface Card,网络适配器)

 

2 HTTP 协议

2.1 请求报文:请求方法 、请求 URI、协议版本、可选请求首部字段、和和请求体

 

 

响应报文:协议版本、状态码、解释状态码的原因短语、可选响应首部字段、以及响应体

 

 

2.2 http 协议是无状态协议

2.3 范围请求。获取部分内容的范围请求,对于网络资源只想要获取其中的一部分,可以使用范围请求。

首部字段 Range 来指定资源的 byte 范围。

 

 针对范围请求,响应会返回状态码为 206 Partial Content 的响应报文。另外,对于多重范围的范围请求,响应会在首部字段 Content-Type 标明 multipart/byteranges 后返回响应报文。

如果服务器端无法响应范围请求,则会返回状态码 200 OK 和完整的实体内容。\

 

2.4 状态码:描述服务器端对请求的处理状态

200: 请求被服务器端正常处理

204 no content:服务器端已成功处理请求,但是在返回的响应报文中不含实体的主体内容。浏览器显示的页面不发生更新。

206 partial content:表示服务器端成功执行了范围请求,响应报文中包含由 Content-Range 指定范围的实体内容。

 

3XX 响应结果表明浏览器需要执行某些特殊的处理以正确处理请求。

301:永久性重定向。

302:临时性重定向。

303:表示该请求对应的资源存在着另一个URI,应使用 get 方法定向获取请求的资源。

 

4XX 客户端错误

400:客户端请求报文中存在语法错误

401:需要认证信息或认证失败。第一次返回表示需要认证信息,第二次表示认证失败。

403:禁止访问,没有访问权限。

404:服务器端没有找到请求资源

 

5XX 服务器错误

500 :服务器处理请求发生错误

503:服务器暂时处于超负载或正在进行停机维护,现在无法处理请求。

 

参考文献:

《图解HTTP》

 



 

posted @ 2019-08-30 09:59  crazyCodeLove  阅读(877)  评论(0编辑  收藏  举报