• request 知识点


    Request对象

      request对象的原型是javax.servlet.http.HttpServletRequest.此对象由服务器自动创建。

      在Servlet API中,定义了一个HttpServletRequest接口,它继承自ServletRequest接口,专门用来封装HTTP请求消息。服务器在创建此对象时把Http请求的三样数据已经封装给了request对象。所以想获得请求的数据只要调用request对象的getXXX方法即可。 

      Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。

      请求参数:

        get请求: 数据存在于请求行中,网址中?后面部分;

        post请求:数据存在于请求正文中;

      常用的获取数据的方法(请求体):

        parameter:参数. parameter的相关方法是获取表单数据的.

        String getParameter(String name)  获得指定参数名对应的一个值。如果有返回字符串,如果没有则返回null。

        String[] getParameterValues(String name)  获得指定参数名对应的一个数组。如果有返回字符串数组,如果没有则返回null。

        Map<String,String[]> getParameterMap();   获取表单中所有的数据。//框架用

        setCharacterEncoding(String env)   设置请求体的编码,用于解决POST请求参数乱码问题,只解决post请求正文的乱码问题

        new String(username.getBytes("iso-8859-1"),"UTF-8");  解决get方式提交的乱码

      与请求行相关的方法

        getMethod(); //获取请求方式

        getRequestURL(); //获取URL

        getRequestURI(); //获取URI

        getContextPath();//  获取项目名

        getRemoteAddr(); // 获取客户机IP地址

      与请求头相关的方法

        getHeader(String name);   以字符串形式返回请求头的值

      request的生命周期: 当服务器收到客户端发送的请求时,就会创建request对象,当服务器对这次请求做出回应了,呢么request对象就会被销毁.存的数据只能在一次请求范围内有效!!!

      request作为域对象的相关方法

        request.setAttribute(String name,Object value);  向request中添加<key,value>

        Object request.getAttribute(String name);

      请求转发

        request.getRequestDispatcher("/XXXServlet").forward(request,response);  当下一个资源需要传递过来的数据时适合使用;

      重定向

        respnose.sendRedirect(request.getContextPath()+"/XXXServlet");  当下一个资源不需要传递过来的数据时适合使用。

      转发与重定向的区别

        0.转发服务器内部执行,  重定向是浏览器执行

        1.转发的地址栏没有变化,  重定向的地址栏发送了变化.

        2.转发一次请求一次响应,  重定向是两次请求两次响应.

        3.转发的路径不需要写工程名,  重定向的路径需要加工程名.

        4.转发只能在本网站内部,  重定向可以定向到任何页面.

        5.转发可以传递数据,  重定向不能传递数据。

     HTML标签中的src,href都有自动发送请求的能力.

    天天向上
  • 相关阅读:
    PHP vscode+XDebug 远程断点调试服务器上的代码
    Wordpress 为用户或角色 role 添加 capabilities(权限)
    Wordpress 后台文章编辑区添加模板选择功能
    CentOS 7 编译安装最新版git
    WordPress 通过文章 URL 获取文章 ID
    Web 安全问题 rel="noopener nofollw"
    Wordpress 通过 post id 获取文章 url
    git放弃修改&放弃增加文件
    Wordpress 作者模板页中的自定义帖子类型分页问题
    PHP 删除 url 中的 query string
  • 原文地址:https://www.cnblogs.com/xiao-cui-tong/p/13111455.html
Copyright © 2020-2023  润新知