response.setHeader();小结

response.setHeader();
1. HTTP消息头

(1)通用信息头

  即能用于请求消息中,也能用于响应信息中,但与被传输的实体内容没有关系的信息头,如Data,Pragma

  主要: Cache-Control , Connection , Data , Pragma , Trailer , Transfer-Encoding , Upgrade

(2)请求头

  用于在请求消息中向服务器传递附加信息,主要包括客户机可以接受的数据类型,压缩方法,语言,以及客户计算机上保留的信息和发出该请求的超链接源地址等.

  主要: Accept , Accept-Encoding , Accept-Language , Host ,

(3)响应头

  用于在响应消息中向客户端传递附加信息,包括服务程序的名称,要求客户端进行认证的方式,请求的资源已移动到新地址等.

  主要: Location , Server , WWW-Authenticate(认证头)

(4)实体头

  用做实体内容的元信息,描述了实体内容的属性,包括实体信息的类型,长度,压缩方法,最后一次修改的时间和数据的有效期等.

  主要: Content-Encoding , Content-Language , Content-Length , Content-Location , Content-Type

(4)扩展头

  主要:Refresh, Content-Disposition


  • 一秒刷新页面一次 response.setHeader("refresh","1");

  •  二秒跳到其他页面 response.setHeader("refresh","2;URL=otherPagename");

  • 没有缓存:response.setHeader("Pragma", "No-cache");  response.setHeader("Cache-Control", "no-cache");

  • 设置过期的时间期限  response.setDateHeader("Expires", System.currentTimeMillis()+自己设置的时间期限);

  • 访问别的页面:response.setStatus(302); response.setHeader("location","url");

  • 通知浏览器数据采用的压缩格式:response.setHeader("Content-Encoding","压缩后的数据"); 

  • 高速浏览器压缩数据的长度:response.setHeader("Content-Length",压缩后的数据.length+"");

 

  • 高速浏览器图片或视频:response.setHeader("Content-type","这个参数在tomcat里conf下的web.xml里面找");

inputstream in= this.getServletContext.getResourceAsStream("/2.jpg");
  int len=0;
  byte buffer[]= new byte[1024]

  outputStream out = response.getOutputStream();

  while(len=in.read(buffer)>0){
    out.write(buffer,0,len)
  }

  

  • 高速浏览器已下载的形式:response.setHeader("Content-disposition","attachment;filename=2.jpg");

 

 inputstream in= this.getServletContext.getResourceAsStream("/2.jpg");
  int len=0;
  byte buffer[]= new byte[1024]

  outputStream out = response.getOutputStream();

  while(len=in.read(buffer)>0){
    out.write(buffer,0,len)
  }

  

原文地址:https://www.cnblogs.com/vivi-d/p/3755083.html