l 请求行中的GET称之为请求方式,请求方式有:
• POST、GET、HEAD、OPTIONS、DELETE、TRACE、PUT
• 常用的有: GET、 POST
• 用户如没有设置,默认情况下浏览器向服务器发送的都是get请求,例如在浏览器直接输地址访问,点超链接访问等都是get,用户如想把请求方式改为post,可通过更改表单的提交方式实现。
l 不管POST或GET,都用于向服务器请求某个WEB资源,这两种方式的区别主要表现在数据传递上:
• 如请求方式为GET方式,则可以在请求的URL地址后以?的形式带上交给服务器的数据,多个数据之间以&进行分隔,例如:
• GET /mail/1.html?name=abc&password=xyzHTTP/1.1
• GET方式的特点:在URL地址后附带的参数是有限制的,其数据容量通常不能超过1K。
• 如请求方式为POST方式,则可以在请求的实体内容中向服务器发送数据,Post方式的特点:传送的数据量无限制。
l 举例:
GET /books/java.html HTTP/1.1
Accept: */*
Accept-Language: en-us
Connection: Keep-Alive
Host: localhost
Referer: http://localhost/links.asp
User-Agent: Mozilla/4.0
Accept-Encoding: gzip, deflate
l HTTP请求中的常用响应头
• Location:http://www.it315.org/index.jsp
• Server:apache tomcat
• Content-Encoding: gzip
• Content-Length: 80
• Content-Language: zh-cn
• Content-Type: text/html;charset=GB2312
• Last-Modified: Tue, 11 Jul 200018:23:51 GMT
• Refresh:1;url=http://www.it315.org
• Content-Disposition:attachment; filename=aaa.zip
• Transfer-Encoding: chunked
• Set-Cookie:SS=Q0=5Lb_nQ;path=/search
• ETag: W/"7777-1242234904000"
• Expires: -1
• Cache-Control: no-cache
• Pragma: no-cache
• Connection: close/Keep-Alive
• Date: Tue, 11 Jul 2000 18:23:51 GMT
l HTTP请求头字段
• Range头指示服务器只传输一部分Web资源。这个头可以用来实现断点续传功能。Range字段可以通过三种格式设置要传输的字节范围:
• Range: bytes=1000-2000
传输范围从1000到2000字节。
• Range: bytes=1000-
传输Web资源中第1000个字节以后的所有内容。
• Range bytes=1000
传输最后1000个字节。
l HTTP响应消息头字段
• Accept-Ranges:这个字段说明Web服务器是否支持Range支持,则返回Accept-Ranges: bytes,如果不支持,则返回Accept-Ranges: none.
• Content-Range:指定了返回的Web资源的字节范围。这个字段值的格式是:例子: Content-Range:1000-3000/5000