[Java.Web][Servlet]常用请求头

response.setStatus(302);
response.setHeader("location", "/day04/1.html");

这段代码可以实现 页面重定向到  "/day04/1.html"

String data = "aaaaa";
System.out.println("原始数据大小:" + data.length());

ByteArrayOutputStream bout = new ByteArrayOutputStream();
GZIPOutputStream gout = new GZIPOutputStream(bout);
gout.write(data.getBytes());
gout.close();

byte[] gzip = bout.toByteArray();   // 得到压缩后的数据
System.out.println("压缩后大小:"+gzip.length);

// 通知浏览器数据采用压缩格式
response.setHeader("Content-Encoding", "gzip");
response.setHeader("Content-Length", String.valueOf(gzip.length));
response.getOutputStream().write(gzip);

这段代码可以实现 以压缩数据方式传递页面

response.setHeader("refresh", "3;url=http://baidu.com");

String data = "sss";
response.getOutputStream().write(data.getBytes());

这段代码可以实现 3秒后页面跳转到 http://baidu.com

response.setHeader("Content-type", "image/jpeg");
InputStream in = this.getServletContext().getResourceAsStream("/1-01.jpeg");
int len = 0;
byte[] buffer = new byte[1024];
OutputStream out = response.getOutputStream();
while ((len = in.read(buffer)) > 0) {
    out.write(buffer, 0, len);
}

这段代码可以实现 打开页面后自动载入 /day05 目录下的 1-01.jpeg 图片。(图片与 WEB-INF 同一目录下。)

response.setHeader("content-disposition", "attachment;filename=3.jpg");
InputStream in = this.getServletContext().getResourceAsStream(
        "/1-01.jpeg");
int len = 0;
byte[] buffer = new byte[1024];
OutputStream out = response.getOutputStream();
while ((len = in.read(buffer)) > 0) {
    out.write(buffer, 0, len);
}

这段代码与上面的代码只第一行有区别,它的行为是让浏览器下载此图片并保存为  3.jpg。

原文地址:https://www.cnblogs.com/z5337/p/6821663.html