什么是HTTP?
HTTP,全称HyperText Transfer Protocol,即超文本传输协议,是基于TCP/IP通信协议来传递数据的。
HTTP的三个特点:
1.HTTP是无连接的。
无连接的意思是什么?无连接是限制每次连接只处理一个请求,服务器处理完请求,并且在客户端的应答后,就会断开连接。
那无连接有什么好处?采用无连接可以节省传输时间。
2.HTTP是媒体独立性的。
媒体独立性应该怎么理解?
所谓媒体独立性,意味着只要服务器和客户端知道如何处理的数据内容,任何类型的数据都可以发送,当然,前提是服务器和客户端需要指定适合的MIME-type内容类型。
3.HTTP是无状态的。
那关于无状态?
无状态是指协议对于事务处理是没有记忆能力的,这意味着,如果后续处理需要使用到前面的信息,对应的信息都需要重新传送,这无疑会导致每次连接数据传输量变大。
这里附上一副HTTP协议通信流程图:
HTTP请求
一个HTTP请求由以下四部分组成:请求行、请求头部、空行和求数据。
例子:
POST / HTTP1.1
Host:www.wrox.com
User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)
Content-Type:application/x-www-form-urlencoded
Content-Length:40
Connection: Keep-Alive
<!--空行-->
name=Professional%20Ajax&publisher=Wiley
HTTP响应
一个HTTP响应同样由四部分组成:状态行、消息报头、空行和响应正文
例子:
HTTP/1.1 200 OK
Date: Fri, 22 May 2009 06:07:21 GMT
Content-Type: text/html; charset=UTF-8
<!--空行-->
<html>
<!--代码-->
</html>
http状态码这里就放上一个链接:关于http状态码