Web学习日记_15:respond响应

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31539817/article/details/84557145

1,服务器处理请求的流程:

  1.   服务器每次收到请求时,都会为这个请求开辟一个新的线程。
  2.   服务器会把客户端的请求数据封装到request对象中,request就是请求数据的载体!
  3.   服务器还会创建response对象,这个对象与客户端连接在一起,它可以用来向客户端发送响应。


2,response:其类型为HttpServletResponse

  •   ServletResponse-->与协议无关的类型
  •   HttpServletResponse-->与http协议相关的类型

  回忆一下http协议!http协议中响应的内容包含哪些东西呢?
  * 状态码:200表示成功、302表示重定向、404表示客户端错(访问的资源不存在)、500表示服务器端错

  •     > sendError(int sc) --> 发送错误状态码,例如404、500
  •     > sendError(int sc, String msg) --> 也是发送错误状态码,还可以带一个错误信息!
  •     > setStatus(int sc) --> 发送成功的状态码,可以用来发送302

 
3,响应头:Content-Type、Refresh、Location等等
    头就是一个键值对!可能会存在一个头(一个名称,一个值),也可能会存在一个头(一个名称,多个值!)

  • > *****setHeader(String name, String value):适用于单值的响应头,例如:response.setHeader("aaa", "AAA");
  • > addHeader(String name, String value):适用于多值的响应头     

              response.addHeader("aaa", "A");

             response.addHeader("aaa", "AA"); 

              response.addHeader("aaa", "AAA");

  •     > setIntHeader(String name, int value):适用于单值的int类型的响应头

                 response.setIntHeader("Content-Length", 888);

  •     > addIntHeader(String name, int value):适用于多值的int类型的响应头
  •     > setDateHeader(String name, long value):适用于单值的毫秒类型的响应头

                response.setDateHeader("expires", 1000 * 60 * 60 * 24);

  •     > addDateHeader(String name, long value):适用于多值的毫秒类型的响应头

猜你喜欢

转载自blog.csdn.net/qq_31539817/article/details/84557145