美文网首页
Response&Request&Http

Response&Request&Http

作者: 大黄想去看极光 | 来源:发表于2018-11-09 17:13 被阅读0次

Response
1.响应消息(response)组成:响应行,响应头,响应空行,响应体
2.响应行组成:协议/版本 响应状态码 状态码描述
3.响应状态码:1. 1xx:服务器就收客户端消息,但没有接受完成,等待一段时间后,发送1xx多状态码
2. 2xx:成功。代表:200
3. 3xx:重定向。代表:302(重定向),304(访问缓存)
4. 4xx:客户端错误。
* 代表:
* 404(请求路径没有对应的资源)
* 405:请求方式没有对应的doXxx方法
5. 5xx:服务器端错误。代表:500(服务器内部出现异常)
4.重定向方法:response.sendRedirect方法
特点:1. 地址栏发生变化
2. 重定向可以访问其他站点(服务器)的资源
3. 重定向是两次请求。不能使用request对象来共享数据
5.乱码问题:response.setContentType("text/html;charset=utf-8");
6.响应头:1. Content-Type:服务器告诉客户端本次响应体数据格式以及编码格式
2. Content-disposition:服务器告诉客户端以什么格式打开响应体数据

Request

  1. request对象和response对象的原理

    1. request和response对象是由服务器创建的。我们来使用它们
    2. request对象是来获取请求消息,response对象是来设置响应消息
  2. 其他功能:
    1. 获取请求参数通用方式:不论get还是post请求方式都可以使用下列方法来获取请求参数
    1. String getParameter(String name):根据参数名称获取参数值 username=zs&password=123
    2. String[] getParameterValues(String name):根据参数名称获取参数值的数组 hobby=xx&hobby=game
    3. Enumeration<String> getParameterNames():获取所有请求的参数名称
    4. Map<String,String[]> getParameterMap():获取所有参数的map集合

         * 中文乱码问题:
             * get方式:tomcat 8 已经将get方式乱码问题解决了
             * post方式:会乱码
                 * 解决:在获取参数前,设置request的编码request.setCharacterEncoding("utf-8");
    
  3. 请求转发:一种在服务器内部的资源跳转方式
    1. 步骤:
    1. 通过request对象获取请求转发器对象:RequestDispatcher getRequestDispatcher(String path)
    2. 使用RequestDispatcher对象来进行转发:forward(ServletRequest request, ServletResponse response)

         2. 特点:
             1. 浏览器地址栏路径不发生变化
             2. 只能转发到当前服务器内部资源中。
             3. 转发是一次请求
    

4.* 域对象:一个有作用范围的对象,可以在范围内共享数据
* request域:代表一次请求的范围,一般用于请求转发的多个资源中共享数据
* 方法:
1. void setAttribute(String name,Object obj):存储数据
2. Object getAttitude(String name):通过键获取值
3. void removeAttribute(String name):通过键移除键值对

5.获取ServletContext:
* ServletContext getServletContext()

6.请求头:

  • (*)String getHeader(String name):通过请求头的名称获取请求头的值
  1. User-Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息
    * 可以在服务器端获取该头的信息,解决浏览器的兼容性问题

         2. Referer:http://localhost/login.html
             * 告诉服务器,我(当前请求)从哪里来?
                 * 作用:
                     1. 防盗链:
                     2. 统计工作:
    

HTTP
1.* 概念:Hyper Text Transfer Protocol 超文本传输协议
* 传输协议:定义了,客户端和服务器端通信时,发送数据的格式
* 特点:
1. 基于TCP/IP的高级协议
2. 默认端口号:80
3. 基于请求/响应模型的:一次请求对应一次响应
4. 无状态的:每次请求之间相互独立,不能交互数据

  • 请求方式:
    * HTTP协议有7中请求方式,常用的有2种
    * GET:
    1. 请求参数在请求行中,在url后。
    2. 请求的url长度有限制的
    3. 不太安全
    * POST:
    1. 请求参数在请求体中
    2. 请求的url长度没有限制的
    3. 相对安全

相关文章

  • Response&Request&Http

    Response1.响应消息(response)组成:响应行,响应头,响应空行,响应体2.响应行组成:协议/版本 ...

网友评论

      本文标题:Response&Request&Http

      本文链接:https://www.haomeiwen.com/subject/nqboxqtx.html