HTTP 协议格式
HTTP请求数据:
HTTP请求信息由3部分组成:
① 请求方法 URI 协议/版本
② 请求头\(Request Header\)
③ 请求正文
HTTP 请求 数据 例子举例:
GET/sample.Jsp HTTP/
1.1
Accept:
image/gif.image/jpeg,*/*
Accept-Language:
zh-cn
Connection:
Keep-Alive
Host:
localhost
User-Agent:
Mozila/
4.0
(compatible;MSIE5
.01
;Window NT5
.0
)
Accept-Encoding:
gzip,deflate
username=jinqiao
&
password=
1234
(1)请求方法URI协议/版本
请求的第一行是“方法URL协议版本”:
GET
/sample.jsp HTTP/
1.1
以上代码中“GET”代表请求方法,“/sample.jsp”表示URI,“HTTP/1.1代表协议和协议的版本。
根据HTTP标准,HTTP请求可以使用多种请求方法。例如:HTTP1.1支持7种请求方法:GET、POST、HEAD、OPTIONS、 PUT、DELETE和TARCE。在Internet应用中,最常用的方法是GET和POST。
URL完整地指定了要访问的网络资源,通常只要给出相对于服务器的根目录的相对目录即可,因此总是以“/”开头,最后,协议版本 声明了通信过程中使用HTTP的版本。
(2)请求头(Request Header)
请求头包含许多有关的客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求正文的长度等。
Accept:
image/gif.image/jpeg.*/*
Accept-Language:
zh-cn
Connection:
Keep-Alive
Host:
localhost
User-Agent:
Mozila/
4.0
(compatible:MSIE5
.01
:Windows NT5
.0
)
Accept-Encoding:
gzip,deflate.
(3)请求正文
请求头和请求正文之间是一个空行,这个行非常重要,它表示请求头已经结束,接下来的是请求正文。请求正文中可以包含客户提 交的查询字符串信息:
username
=jinqiao
&
password=
1234
Http请求方法:
GET 请求获取由Request-URI所标识的资源。
POST 在Request-URI所标识的资源后附加新的数据。
HEAD 请求获取由Request-URI所标识的资源的响应消息报头。
OPTIONS 请求查询服务器的性能,或查询与资源相关的选项和需求。
PUT 请求服务器存储一个资源,并用Request-URI作为其标识。
DELETE 请求服务器删除由Request-URI所标识的资源。
TRACE 请求服务器回送收到的请求信息,主要用语测试或诊断。
HTTP响应数据:
Response Headers
下面给出一个HTTP响应报文例子
HTTP/1.1 200 OK
Date: Sat, 31 Dec 2005 23:59:59 GMT
Content-Type: text/html;charset=ISO-8859-1
Content-Length: 122
<html>
<head>
<title>Wrox Homepage</title>
</head>
<body>
<!-- body goes here -->
</body>
</html>