学习资源非常宝贵,感谢楼主分享,原文地址http://kb.cnblogs.com/page/140611/
在一个网络中。传输数据需要面临三个问题:
1.客户端如何知道所请求内容的位置(统一资源定位符url)
2.客户端知道所请求内容的位置后,如何获得内容(http)
3.所请求内容以何种形式组织以便被客户端所识别(html)
HTTP请求(HTTP Request)
http请求,就是web客户端向web服务器发送的信息,这个信息由如下三部分组成
- 1.请求行
一个典型的请求行 GET www.cnblogs.com http/1.1 由三部分组成,第一部分是请求方法,第二部分是请求网址,第三部分是HTTP的版本
- 2.HTTP头
HTTP头在HTTP请求可以是3种头:请求头,普通头,实体头
- 3.内容
内容只在POST请求中存在
HTTP响应(HTTP Response)
HTTP响应在结构上类似于HTTP请求
- 1.状态行
HTTP/1.1 200 OK
第一部分是HTTP版本,第二部分是状态码,第三部分是状态码的描述,可以把第二第三部分看成一部分
状态码必须说一下
信息类(100-199)
响应成功(200-299)
重定向类(300-399)
客户端错误类(400-499)
服务端错误类(500-599)
- 2.HTTP头
- 3.返回内容
浏览器如何知道接收到的数据是什么类型,Content-Type这个HTTP头定义了接收到信息的类型
-
application (比如: application/vnd.ms-excel.)
-
audio (比如: audio/mpeg.)
-
image (比如: image/png.)
-
message (比如: message/http.)
-
model (比如: model/vrml.)
-
multipart (比如: multipart/form-data.)
-
text (比如: text/html.)
-
video (比如:video/quicktime.)