各种疑问和解决(一)

新建servlet文件。可使用HttpServletRequest下的getHeader()方法来获取报头。

响应报头:利用getHeader()方法对响应进行设计。

containsHeader(java.lang.String name):返回一个布尔值指示是否设置了响应头。
setHeader(java.lang.String name,java.lang.String value):用于一个给定的名称和字符串设置响应头的通用方式。如果响应头已经被设置,新的值将覆盖当前的值。在设置值之前可以先用containsHeader()方法判断头是否存在。
setIntHeader(java.lang.String name,int value):用于一个给定的名称和整型设置响应头。如果响应头已经被设置,新的值将覆盖当前的值。在设置值之前可以先用containsHeader()方法判断头是否存在。
setDateHeader(java.lang.String name,long date):用于一个给定的名称和日期设置响应头。这里的日期值应该是自1970-1-1(GTM)以来的精确到毫秒的长整型数。如果响应头已经被设置,新的值将覆盖当前的值。在设置值之前可以先用containsHeader()方法判断头是否存在。
addHeader(java.lang.String name,java.lang.String value):addHeader()方法用于在response中添加一个给定名称和字符串的响应头,而不管是否已经存在同名的报头。该方法允许响应头有多个值。
addIntHeader(java.lang.String name,int value):用于在response中添加一个给定名称和整型值的响应头,该方法允许响应头有多个值。
addDateHeader(java.lang.String name,long date):用于在response中添加一个给定的名称和日期设置响应头。这里的日期值应该是自1970-1-1(GTM)以来的精确到毫秒的长整型数,该方法不会覆盖以前的响应头。该方法允许响应头有多个值。
setContentType(String mimetype) : 用于设置返回客户端内容的MIME 类型
addCookie(Cookie c) :用于向Set-Cookie报头插入一个Cookie。由于在HTTP响应中会存在多个Set-Cookie行,所有没有对应的setCookie方法。

response 设置响应头的常用几种方法

1.Location 的用法

response.setStatus(302)//临时定向响应码

response.setHeader(“Location”, “/day03_00_ResponseHeader/servlet/ResponseHeaderDemo2”);///day03_00_ResponseHeader/servlet/ResponseHeaderDemo2 代表转向的地址

2.response.setHeader(“Content-Encoding”, “gzip”); //告诉响应头以gzip 格式解码

再输入输出流的时候用GZIPOutputStream 缩小文件的大小。

3.//刷新Refersh

response.setHeader(“Refresh”, “3;url=http://www.baidu.com“); //告诉客户端 三秒后刷新

4.Content-Disposition ////通知客户端已下载的方式接受数据

response.setHeader(“Content-Disposition”, “attachment;filename=2.jpg”);

5.Content-Type//告知客户端响应正文类型
response.setHeader(“Content-Type”, “application/octet-stream”);

6. Expires 控制缓存

     //控制浏览器不要缓存  
    response.setHeader("Expires", "-1");  
    response.setHeader("Cache-Control", "no-cache");  
    response.setHeader("Pragma",  "no-cache");  

 //控制缓存时间 response.setDateHeader("Expires", System.currentTimeMillis()+1*60*60*1000); 

你可能感兴趣的:(programming)