关于Http协议、ASP.NET 核心知识(2)

简介HTTP

(对于http协议的描述我前部分有写,但基于保证文档独立完整性的原则,我再写一遍。反正又不花钱。)

这货的学名叫:超文本传输协议

英文名字:(HTTP,HyperText Transfer Protocol)

他是互联网上应用最为广泛的一种网络协议。http协议定义了浏览器如何向网络服务器请求文档,以及服务器怎样把文档传送给浏览器。 可以这样说嘛?网站就是活在http协议上的。所以对于ASP.NET开发人员来说,这部分内容,是必须了解的。

HTTP协议的特点

这部分内容是我认为的,万一不对请马上指出来。

1.请求/响应式

http协议是请求/响应式的。没有请求就木有响应。

也就是说客户看到的页面,都是根据客户的请求返回的。

2.面向文本

http是面向文本的,他的请求报文是文本,响应报文也是文本。

报文中的每一个字段都是一些ASCII码串,所以各个字段的长度不确定。

3.http报文种类

http报文总共就有两类,请求报文、响应报文。

1)请求报文 

2)响应报文

4.http报文结构

无论是请求报文,还是响应报文,都可以划分为三部分。

1)开始行

2)首部行

   我的习惯是把上面的的两部分叫,报文头。下面这部分叫报文体。(也不知掉对不对)

3)实际主体

HTTP工作原理图

技术分享

请求报文

1.请求报文长什么样? 

技术分享

   Chrome核心的请求报文

2.报文结构

技术分享

3.报文头部每个字段的意义

技术分享

//从开发者工具上复制的东西

GET /index.php HTTP/1.1

Host: www.baidu.com

Connection: keep-alive

Cache-Control: no-cache

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Pragma: no-cache

User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/4.4.3.4000 Chrome/30.0.1599.101 Safari/537.36

Accept-Encoding: gzip,deflate

Accept-Language: zh-CN

Cookie: BDUSS=I4NXZWWTZ

响应报文

1.响应报文长什么样? 

技术分享

Chrome核心浏览器响应报文。

2.报文结构

技术分享

 

3.报文头部每个字段的意义

技术分享

 

4.响应码

1)常用响应码表。

2 0 0

2 0 1

2 0 2

2 0 4

O K,请求成功

O K,新的资源建立( p o s t命令)

请求被接受,但处理未完成

O K,但没有内容返回

 3 0 1

3 0 2

3 0 4

所请求的资源已被指派为新的固定U R L

所请求的资源临时位于另外的U R L

文档没有修改(条件G E T )

 4 0 0

4 0 1

4 0 3

4 0 4

错误的请求

未被授权;该请求要求用户认证

不明原因的禁止

没有找到

5 0 0

5 0 1

5 0 2

5 0 3

内部服务器差错

没有实现

错误的网关;网关或上游服务器来的无效响应

服务暂时失效

2)规律性总结

http响应报文的响应码,看起来很多很杂,不好记。其实只要记住一个规律就好。

响应码   2xx系列   表示成功了。

响应码   3xx系列   表示重定向

响应码   4xx系列   表示浏览器端错误请求

响应码   5xx系列   表示服务器端的错误。

写完感言

看了这篇文章呢,其实也不算文章吧。我就整理标注了一下数据。

东西不少,其实不需要全部记住。脑子有个概念,知道http传输的是文本,他是请求/响应式的。

再记住几个常用的http报文头,响应报文状态码,就万事大吉了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。