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

最新文章

  1. IntelliJ IDEA 常用设置讲解
  2. window.navigate 与 window.location.href 的使用区别介绍
  3. Linux_命令_积累
  4. ycsb-命令及参数-与生成的负载类型相关
  5. android 不一样的学习记录
  6. 大型网站系统架构实践(六)深入探讨web应用集群Session保持
  7. Logwatch的配置与使用
  8. css之opacity
  9. Asp.Net 之 通过调用 WScript.Shell 启动本地 exe 程序时产生“ automation服务器不能创建对象 ”的错误
  10. effective c++ 条款10 handle assignment to self operator =
  11. MariaDB第四章:视图,事务,索引,外键--小白博客
  12. [物理学与PDEs]第3章习题6 Lagrange 坐标下的一维理想磁流体力学方程组的数学结构
  13. embed标签的flash层级太高问题
  14. cf1108E2 线段树类似扫描线
  15. TerraExplorer Add-ons 和TEZ使用说明
  16. Spring Boot 2 (二):Spring Boot 2 动态 Banner
  17. mysql与redis的区别与联系
  18. “秒杀”问题的数据库和SQL设计【转载】
  19. # 20145106 《Java程序设计》第2周学习总结
  20. Tempdb--TempDB Basic

热门文章

  1. C# - 委托_求定积分通用方法
  2. SqlServer数据库存储过程的使用
  3. 对于一颗完全二叉树,要求给所有节点加上一个pNext指针,指向同一层的相邻节点-----层序遍历的应用题
  4. java调用C#的dll
  5. CLR和.Net对象
  6. ubuntu 安装 maven3.2
  7. javascript 中对this关键字的一些理解
  8. Android来电监听
  9. python学习教程(九)sqlalchemy框架的modern映射
  10. 操作系统概念学习笔记 10 CPU调度