3) HEAD
客户程序和服务器之间交流一些内部数据,服务器不会返回具体的文档。当使用GET和POST方法时,服务器最后都将特定的文档返回给客户程序。而HEAD请求方式则不同,它仅仅交流一些内部数据,这些数据不会影响用户浏览网页的过程,可以说对用户是透明的。HEAD请求方式通常不单独使用,而是为其他请求方式起辅助作用。一些搜索引擎使用HEAD请求方式来获得网页的标志信息,还有一些HTTP服务器进行安全认证时,用这个方式来传递认证信息。
4) PUT
客户程序通过这种方式把文档上传给服务器。
5) DELETE
客户程序通过这种方式来删除远程服务器上的某个文档。客户程序可以利用PUT和DELETE请求方式来管理远程服务器上的文档。
GET和POST请求方式最常用,而PUT和DELETE请求方式并不常用,因而不少HTTP服务器并不支持PUT和DELETE请求方式。
URI(Universal Resource Identifier,统一资源定位符)用于标识要访问的网络资源。在HTTP请求中,通常只要给出相对于服务器的根目录的相对目录即可,因此以“/”开头。
HTTP请求的第一行的最后一部分内容为客户程序使用的HTTP协议的版本。
请求头包含许多有关客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器的类型、所用的语言、请求正文的类型,以及请求正文的长度等:
Accept: image/gif, image/jpeg, */*
Referer: http://localhost/login.htm
Accept-Language: en,zh-cn;q=0.5 //浏览器所用的语言
Content-Type: application/x-www-form-urlencoded //正文类型
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) //浏览器类型
Host: localhost //远程主机
Content-Length: 43 //正文长度
Connection: Keep-Alive
Cache-Control: no-cache
HTTP协议规定,请求头和请求正文之间必须以空行分割,这个空行非常重要,它表示请求头已经结束,接下来是请求正文。请求正文中可以包含客户以POST方式提交的表单数据:
username=weiqin&password=1234
在以上HTTP请求例子中,请求正文只有一行内容。在实际应用中,HTTP请求的正文可以包含更多的内容。
2.HTTP响应
和HTTP请求相似,HTTP响应也由三部分构成:HTTP协议的版本、状态代码、描述;响应头(Response Header);响应正文(Response Content)。
下面是一个HTTP响应的例子:
HTTP/1.1 200 OK
Server: nio/1.1
Content-type: text/html; charset=GBK
Content-length: 102
<html>
<head>
<title>helloapp</title>
</head>
<body >
<h1>hello</h1>
</body>
|