当用户通过浏览器(客户端)向服务端发送一个get请求时:(如下)
请求报文头文件:
GET /***.aspx HTTP/1.1
Referer: 被链接的文档的URL
Accept-Language: zh-CN
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1;
WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729;
.NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E;
InfoPath.3)
Accept-Encoding: gzip, deflate
Host: 客户机的主机和端口号
Connection: Keep-Alive
简单解释:
GET /***.aspx
HTTP/1.1:请求的方法字段、URL字段、HTTP请求版本字段;方法可以是:GET、POST、HEAD等;
Accept:客户机可以接受的媒体格式
Referer:被链接的文档的URL
Accept-Language:客户机能够接受的语言
User-Agent:向服务器发送请求的浏览器类型(在IIS日志里面cs(User-Agent)这个参数可以看到相关访问类
型,例如百度蜘蛛,Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html))
Accept-Encoding:客户机能够处理的编码方式
Host:客户机的主机和端口号
Connection:连接关闭或者保持连接
响应报文头文件:
HTTP/1.1 200 OK
Server: ASP.NET Development Server/10.0.0.0
Date: Sat, 14 May 2011 06:43:17 GMT
X-AspNet-Version: 4.0.30319
Cache-Control: private
Content-Type: text/html; charset=utf-8
Content-Length: 812
Connection: Close
简单解释:
HTTP/1.1 200
OK:请求成功。一些常见的状态码还有:
301:moved permanently
请求的对象已经被永久转移,新的URL定义在响应报文的LOCATION:首部行中指定。客户机软件自动用新的URL获取该对象。
302:moved temporarily
所请求的URL已暂时被移除
400:bad request 在请求中有语法错误
401:unauthorized 请求缺少适当权限
403:forbidden 服务被拒绝
404:not found 文档未找到
500:internal server error
服务器内部错误
503:service unavailable 服务暂时不可用
Server:响应请求的服务器名和版本号
Date:服务器产生并发生响应报文的日期和时间
Cache-Control:高速缓存信息
Content-Type:服务器响应的文档类型
Content-Length:服务器响应文档类型的字节数