HTTP 响应
所谓响应事实上就是server对请求处理的结果。或者假设浏览器请求的直接就是一个静态资源的话,响应的就是这个资源本身。
HTTP 响应的组成
①响应状态行:包含协议版本号、响应状态码、响应状态信息
②响应消息头:响应头
③实体内容:响应体
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTc5NDIzOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- 最常见的响应状态码
代码 表示
说明
200 成功
server已成功处理了请求。
通常。这表示server提供了请求的网页。
302 重定向
代表让浏览器又一次请求还有一个资源
404 找不到
找不到请求的资源, 但有时请求路径正确也返回 404 往往是因为 Web 应用有配置方面的问题,比如依照配置文件里指定的组件的全类名找不到指定的类。
500 错误
server内部错误。比如server端程序执行时抛出异常。
●响应状态码以 2 开头的通常表示成功。
●响应状态码以 3 开头的通常表示转移。
●响应状态码以4开头的通常表示无法訪问。 当中包含找不到资源或没有权限等。
●响应状态码以 5 开头的通常表示server端程序执行出错。
- 响应消息头:简称响应头
●server发送给浏览器的数据,为了告诉浏览器一些情况。
代码 说明
Location: /www.baidu.com/index.jsp 告诉浏览器又一次定向到指定的路径
Server:apache tomcat 使用的什么 web server
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 server指定 CacheControl = no-cache 时,浏览器就不
会缓存该网页
Connection: close/Keep-Alive 是否保持连接
Date: Tue, 11 Jul 2000 18:23:51 GMT 响应的时间
响应体:server给出的响应结果的主体,一般是用来在页面上显示的。
HTTP 内容类型:当前响应体的数据类型。
须要指出的是在浏览器和server之间传输的数据类型并不是都是文本类型。还包含图片、视频、音频等多媒体类型。这些多媒体类型是使用 MIME 类型定义的。MIME 的英文全称是"Multipurpose Internet Mail Extensions" 多功能 Internet 邮件扩充服务。MIME 类型的格式是“大类型/小类型” ,并与某一种文件的扩展名相相应。
常见的 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