HttpServletResponse对象


前言

一、Http响应详解

1、HTTP响应报文

     http是基于请求和响应的协议,一次请求对应一次响应,请求和响应的数据格式都遵从HTTP的超文本传输协议,HTTP的请求一样,HTTP响应的数据也分为3部分:响应行、响应头、响应体这3部分。请求是通过浏览器将数据传送到服务器,而响应是将服务器处理的结果回送到浏览器。

2、使用抓包工具查看响应数据
响应行格式:
  • 协议、版本

    • 响应行举例:HTTP/1.1 200
  • 状态码

    • 常见状态码
    • 状态码状态码描述说明
      200OK请求已成功,请求所希望的响应头或数据体将随此响应返回,出现此状态码是表示正常状态。
      302Move temporarily重定向,请求的资源临时从不同的地址响应请求。
      304Not Modified从浏览器缓存中读取数据,不从服务器重新获取数据。例如,用户第一次从浏览器访问服务器端图片资源,以后在访问该图片资源的时候就不会在服务器上加载而直接到浏览器缓存中加载,这样效率更高。
      404Not Found请求资源不存在,通常是用户路径编写错误,也可能是服务器资源已经删除。
      403Forbidden服务器已经理解请求,但是拒绝执行它。
      405Method Not Allowed请求行中指定的请求方法不能被用于请求相应的资源。
      500Internal Server Error服务器内部错误,通常程序抛异常。
  • 响应头

    • 响应头也是用的键值对:key:value,服务器基于响应头通知浏览器的行为。
    • 响应头举例:
      • HTTP/1.1 404
      • Content-Type :text/html; charset=utf-8
      • Content-Language:en
      • Content-Length:1093
      • Date:Mon,25 jun 2018 13:02:22 GMT
  • 常见的响应头:

    • 响应头Key响应头Value
      location指定响应的路径,需要与状态码302配合使用,完成重定向
      Content-Type响应正文的类型(MIME类型,属于服务器里面的一种类型,例如文件在Windows系统有自己的类型,.txt、.doc、.jpg。文件在服务器中也有自己的类型),同时还可以解决乱码问题。例如:text/html; charset=UTF-8
      content-disposition通过浏览器以附件形式解析正文,例如:attachment;filename=xx.zip
      refresh页面刷新,例如:3; url=www.baidu.com // 三秒刷新页面到 www.baidu.com

      补充说明:

      MimeType:标识数据类型

      最早的HTTP协议中,并没有附加的数据类型信息,
      所有传送的数据都被客户程序解释为超文本标记语言 HTML 文档,而为了支持多媒体数据类型,
      HTTP协议中就使用了附加在文档之前的MIME数据类型信息 来标识数据类型。
      MIME意为多功能Internet邮件扩展,它设计的最初目的是为了在发送电子邮件时附加多媒体数据,
      让邮件客户程序能根据其类型进行处理。然而当它被HTTP协议支持之后,它的意义就更为显著了。
      它使得HTTP传输的不仅是普通的文本,而变得丰富多彩。   		
      每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,
      后面定义 具体的种类。 
      
      常见的MIME类型(通用型): 
      windows 			   tomcat 
      超文本标记语言文本  	 .html text/html *** 
      xml文档 .xml     	   text/xml 
      XHTML文档 .xhtml       application/xhtml+xml 
      普通文本 .txt          text/plain *** 
      PDF文档 .pdf           application/pdf 
      Microsoft Word文件     .word application/msword 
      PNG图像 .png           image/png *** 
      GIF图形 .gif           image/gif 
      JPEG图形 .jpeg,.jpg    image/jpeg
      
  • 响应体

    • 响应体,就是服务器发送给浏览器的数据。当前浏览器向服务器请求的资源是hello.html,所以服务器给浏览器响应的数据是一个html页面。
    • 总结:
    • 响应行:协议版本号 状态码
      • 状态码:
        • 200 一切正常
        • 404 找不到资源路径
        • 500 服务器报异常
        • 302 和location一起使用,实现重定向
        • 304 从浏览器缓存中读取数据
    • 响应头
      • location 指定响应的路径
      • content-type 告诉浏览器文件格式,告诉浏览器不要解析html文件,解决中文乱码问题
      • refresh 定时刷新
      • content-disposition 以附件形式展示图片等资源
    • 响应体
      • 服务器处理的结果响应到浏览器中。
  • 响应头

    • 响应头也是用的键值对:key:value,服务器基于响应头通知浏览器的行为。

    • 响应头举例:

      • HTTP/1.1 404
      • Content-Type :text/html; charset=utf-8
      • Content-Language:en
      • Content-Length:1093
      • Date:Mon,25 jun 2018 13:02:22 GMT
    • 常见的响应头:

      • 响应头Key响应头Value
        location指定响应的路径,需要与状态码302配合使用,完成重定向
        Content-Type响应正文的类型(MIME类型,属于服务器里面的一种类型,例如文件在Windows系统有自己的类型,.txt、.doc、.jpg。文件在服务器中也有自己的类型),同时还可以解决乱码问题。例如:text/html; charset=UTF-8
        content-disposition通过浏览器以附件形式解析正文,例如:attachment;filename=xx.zip
        refresh页面刷新,例如:3; url=www.baidu.com // 三秒刷新页面到 www.baidu.com

        补充说明:

        MimeType:标识数据类型

        		最早的HTTP协议中,并没有附加的数据类型信息,所有传送的数据都被客户程序解释为超文本标记语言 HTML 文档,而为了支持多媒体数据类型,HTTP协议中就使用了附加在文档之前的MIME数据类型信息 来标识数据类型。
                MIME意为多功能Internet邮件扩展,它设计的最初目的是为了在发送电子邮件时附加多媒体数 据,让邮件客户程序能根据其类型进行处理。然而当它被HTTP协议支持之后,它的意义就更为显著了。 它使得HTTP传输的不仅是普通的文本,而变得丰富多彩。   		每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,后面定义 具体的种类。 
                常见的MIME类型(通用型): 
          windows 			   tomcat 
          超文本标记语言文本  	 .html text/html *** 
          xml文档 .xml     	   text/xml 
          XHTML文档 .xhtml       application/xhtml+xml 
          普通文本 .txt          text/plain *** 
          PDF文档 .pdf           application/pdf 
          Microsoft Word文件     .word application/msword 
          PNG图像 .png           image/png *** 
          GIF图形 .gif           image/gif 
          JPEG图形 .jpeg,.jpg    image/jpeg
        
  • 响应体

    • 响应体,就是服务器发送给浏览器的数据。当前浏览器向服务器请求的资源是hello.html,所以服务器给浏览器响应的数据是一个html页面。
    • 总结:
    • 响应行:协议版本号 状态码
      • 状态码:
        • 200 一切正常
        • 404 找不到资源路径
        • 500 服务器报异常
        • 302 和location一起使用,实现重定向
        • 304 从浏览器缓存中读取数据
    • 响应头
      • location 指定响应的路径
      • content-type 告诉浏览器文件格式,告诉浏览器不要解析html文件,解决中文乱码问题
      • refresh 定时刷新
      • content-disposition 以附件形式展示图片等资源
    • 响应体
      • 服务器处理的结果响应到浏览器中。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

火飞鹰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值