Http响应、HttpServletResponse对象

转载 2018年04月14日 22:54:23

  转载于:https://blog.csdn.net/qq_34944851/article/details/53204644      谢谢作者

一、Http响应:

1、格式:

响应(服务器—>浏览器)
HTTP/1.1 200 OK     --响应行
Server: Apache-Coyote/1.1   --响应头(key-value)
Content-Type: text/html;charset=utf-8
Content-Length: 17
Date: Wed, 16 Nov 2016 07:16:46 GMT
                            --一个空行
this is a Servlet           --实体内容

2、响应行
1)http协议版本:同请求行
2)状态码: 服务器处理请求的结果(状态)
常见的状态:
a)200 : 表示请求处理完成并完美返回
b)302: 表示请求需要进一步细化。
c)404: 表示客户访问的资源找不到。
d)500: 表示服务器的资源发送错误。(服务器内部错误)
3)状态描述

3、常见响应头:

Location: http://www.it315.org/index.jsp   --表示重定向的地址,该头和302的状态码一起使用。
Server:apache tomcat                 --表示服务器的类型
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;url=http://www.it315.org     --表示定时刷新
Content-Disposition: attachment; filename=aaa.zip --表示告诉浏览器以下载方式打开资源(下载文件时用到)
Transfer-Encoding: chunked
Set-Cookie:SS=Q0=5Lb_nQ; path=/search   --表示服务器发送给浏览器的cookie信息(会话管理用到)
Expires: -1                           --表示通知浏览器不进行缓存
Cache-Control: no-cache
Pragma: no-cache
Connection: close/Keep-Alive           --表示服务器和浏览器的连接状态。close:关闭连接 keep-alive:保存连接

二、HttpServletResponse对象
1、HttpServletResponse对象作用:修改响应信息。

2、响应行:
1)response.setStatus() 设置状态码

2)response.sendError() 设置状态码,调用默认对应页面

3、响应头:
response.setHeader(“name”,”value”) 设置响应头

4、实体内容:
1)response.getWriter().writer(); 发送字符实体内容

2)response.getOutputStream().writer() 发送字节实体内容

5、完整代码及HttpServletResponse开发流程详解

package sram.response;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ResponseDemo1 extends HttpServlet {
    /**
     * 1)tomcat服务器把请求信息封装到HttpServletRequest对象,且把响应信息封装到HttpServletResponse
     * 2)同样tomcat服务器先调用service方法,service方法调用doGet方法,传入request,和response对象。详解见博客HttpServletRequest对象
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        /**
         * 3)通过response对象改变响应信息
         */
        /**
         * 3.1 响应行
         */
        //response.setStatus(404);//修改状态码
        //response.sendError(404); // 发送404的状态码+404的错误页面
        /**
         * 3.2 响应头
         */
        response.setHeader("server", "JBoss");
        /**
         * 3.3 实体内容(浏览器直接能够看到的内容就是实体内容)
         */
        //response.getWriter().write("This is a HttpServletResponse"); //字符内容。
        response.getOutputStream().write("This is a HttpServletResponse".getBytes());//字节内容
    }
    /**
     * 4)tomcat服务器把response对象的内容转换成响应格式内容,再发送给浏览器解析。
     */
}


服务器响应的生成:HTTP响应报头——HttpServletResponse接口的应用

一,响应报头         响应报头允许服务器传递不能放在状态行中的附加响应信息,以及关于服务器的信息和对Request-URI所标识的资源进行下一步访问的信息            常用的响应报头...
  • qfs_v
  • qfs_v
  • 2008-06-20 04:12:00
  • 12390

Servlet总结(3)--HttpServletResponse对象

一、HttpServletResponse对象 服务器收到客户端的请求时,创建好一个Servlet对象,同时,将客户端的请求封装到HttpServletRequest对象当中。而服务器响应给...
  • Mr_Errol
  • Mr_Errol
  • 2016-12-10 14:11:20
  • 278

HttpServletResponse(响应)对象

Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。request和response对象即然代表请求和响应,那我们要...
  • u011428274
  • u011428274
  • 2013-07-17 10:34:12
  • 2842

javaweb—HttpServletRequest和HttpServletResponse对象

**GET和POST提交 主要区别: # 1、Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。例如我们访问网站都是Get方式,而我们的图像上传则是Post。 # 2、Get将...
  • u013468915
  • u013468915
  • 2016-07-24 11:25:14
  • 2852

HttpServletResponse类的常用方法(学习笔记)

所有Servlet响应都实现ServletResponse接口。ServletResponse接口主要有以下方法:(1)从Servlet中可以通过getWriter方法取得PrintWriter对象,...
  • anmo
  • anmo
  • 2005-10-13 16:16:00
  • 1753

服务器端HttpServletResponse对象编码发送信息及浏览器端解码显示信息原理剖析

服务器端HttpServletResponse对象对信息编码向浏览器端发送数据及浏览器端解码显示信息原理剖析 第一点:首先要明白,服务器端是把要发送的信息进行编码为对应为字节流,发送给浏览器。浏览器再...
  • BiLaHePan
  • BiLaHePan
  • 2015-12-01 17:24:21
  • 887

HttpServletResponse说明

HttpServletResponse说明 基本概述     HttpServletResponse是用于将Servlet处理好的内容发送给浏览器的类,服务器通过对HttpServletResp...
  • q547550831
  • q547550831
  • 2016-01-01 18:14:18
  • 3064

HttpServletResponse对象介绍

一、HttpServletResponse对象介绍      HttpServletResponse对象代表服务器的响应。这个对象中封装了向客户端发送数据、发送响应头,发送响应状态码的方法...
  • w410589502
  • w410589502
  • 2016-04-20 17:26:12
  • 280

Struts2教程:获得HttpServletResponse对象

  • 2013年07月19日 11:51
  • 4KB
  • 下载

服务器响应的生成:HTTP状态代码——HttpServletResponse接口应用

一,HTTP响应的格式             web服务器对客户端的响应一般包含:一个状态行,一些响应报头,一个空行和相应的文档构成。                                ...
  • qfs_v
  • qfs_v
  • 2008-06-20 04:42:00
  • 18737
收藏助手
不良信息举报
您举报文章:Http响应、HttpServletResponse对象
举报原因:
原因补充:

(最多只允许输入30个字)