目录
请求报文
HTTP请求:客户端连上服务器后,向服务器发出获取某个Web资源的消息,称之为客户端向服务器发送了一个HTTP请求。一个完整的HTTP请求包括如下内容:
1)请求行
URL地址中如果包含中文,浏览器会自动对中文字符进行编码之后再发送
2)若干消息头(请求头)
3)实体内容(请求体) 有可能没有
响应报文
1)所谓响应其实就是服务器对请求处理的结果,或者如果浏览器请求的直接就是一个静态资源的话,响应的就是这个资源本身。
HTTP响应的组成
(1)响应状态行:包括协议版本、响应状态码、响应状态信息
(2)响应消息头:响应头
(3)实体内容:响应体
2)最常见的响应状态码
代码
表示
说明
200
成功
服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。
302
重定向
代表让浏览器重新请求另一个资源
404
找不到
找不到请求的资源,但有时请求路径正确也返回404往往是由于Web应用有配置方面的问题,例如按照配置文件中指定的组件的全类名找不到指定的类。
500
错误
服务器内部错误,例如服务器端程序运行时抛出异常。
(1)响应状态码以2开头的通常表示成功。
(2)响应状态码以3开头的通常表示转移。
(3)响应状态码以4开头的通常表示无法访问,其中包括找不到资源或没有权限等。
(4)响应状态码以5开头的通常表示服务器端程序运行出错。
3)响应消息头:简称响应头
服务器发送给浏览器的数据,为了告诉浏览器一些情况。
代码
说明
Location: /day05/index.jsp
告诉浏览器重新定向到指定的路径
Server:apache tomcat
使用的什么web服务器
Content-Encoding: gzip
告诉浏览器我传给你的数据用的压缩方式
Content-Length: 80
响应体的字节数
Content-Language: zh-cn
响应体数据的语言
content-type: text/html; charset=GB2312
响应体内容的类型
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT
资源最后被修改的时间
Refresh: 1
定时刷新
Content-Disposition:
attachment; filename=aaa.zip
文件下载
Set-Cookie:SS=Q0=5Lb_nQ; path=/search
将cookie数据回送给ie
Expires: -1
告诉浏览器不要缓存起来
Cache-Control: no-cache
当HTTP1.1服务器指定 CacheControl = no-cache时,浏览器就不会缓存该网页
Connection: close/Keep-Alive
是否保持连接
Date: Tue, 11 Jul 2000 18:23:51 GMT
响应的时间
(1)响应体:服务器给出的响应结果的主体,通常是用来在页面上显示的。
(2)HTTP内容类型:当前响应体的数据类型。
浏览器和服务器之间传输的数据类型并非都是文本类型,还包括图片、视频、音频等多媒体类型。这些多媒体类型是使用MIME类型定义的。MIME的英文全称是”Multipurpose Internet Mail Extensions” 多功能Internet 邮件扩充服务。MIME类型的格式是“大类型/小类型”,并与某一种文件的扩展名相对应。
(3)常见的MIME类型
文件
MIME类型
超文本标记语言文本
.html,.html text/html
普通文本
.txt text/plain
RTF文本
.rtf application/rtf
GIF图形
.gif image/gif
JPEG图形
.jpeg,.jpg image/jpeg
au声音文件
.au audio/basic
MIDI音乐文件
mid,.midi audio/midi,audio/x-midi
RealAudio音乐文件
.ra, .ram audio/x-pn-realaudio
MPEG文件
.mpg,.mpeg video/mpeg
AVI文件
.avi video/x-msvideo
GZIP文件
.gz application/x-gzip
TAR文件
.tar application/x-tar