一.HTTP请求报文结构
一个HTTP请求报文由四个部分组成:请求行\r\n、请求头部\r\n、空行\r\n、请求数据。
1.请求行
请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔。比如
GET /data/info.html HTTP/1.1 ,方法字段就是HTTP使用的请求方法,比如常见的GET/POST,其中HTTP协议版本有两种:HTTP1.0/HTTP1.1,可以这样区别:HTTP1.0对于每个连接都只能传送一个请求和响应,请求就会关闭,HTTP1.0没有Host字段;而HTTP1.1在同一个连接中可以传送多个请求和响应,多个请求可以重叠和同时进行,HTTP1.1必须有Host字段。
2.请求头部
Accept: 可接受的MIME类型。Accept-Charset:可接受的字符集。Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。Authorization:授权信息,通常出现在对服务器发送的WWW-Authenticate头的应答中。