Request对象如何获取请求头数据

 更新时间:2024年07月08日 11:07:38   作者:xuebanub1  
这篇文章主要介绍了Request对象如何获取请求头数据问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Request对象获取请求头数据

getHeaderNames()

  • 作用:获取所有请求头的名字
  • 返回值类型:Enumeration< String>
  • Enumeration:是个迭代器,有两个方法 hasMoreElements(); nextElement();

getHeader(String name) (重点)

  • 作用:根据请求头的名字,获取其value值
  • 参数name即为请求头的名字
  • 返回值类型:String

测试代码

@WebServlet(name = "RequestDemo2", value = "/requestDemo2")
public class RequestDemo2 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //获取所有请求头的名称
        Enumeration<String> headerNames = request.getHeaderNames();
        //遍历
        while (headerNames.hasMoreElements()){
            String name = headerNames.nextElement();
            //根据请求头的名称获取请求头的值
            String value = request.getHeader(name);
            System.out.println(name+":"+value);
        }

    }
}

结果:

host:localhost
connection:keep-alive
cache-control:max-age=0
sec-ch-ua:"Google Chrome";v="111", "Not(A:Brand";v="8", "Chromium";v="111"
sec-ch-ua-mobile:?0
sec-ch-ua-platform:"Windows"
upgrade-insecure-requests:1
user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36
accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
sec-fetch-site:cross-site
sec-fetch-mode:navigate
sec-fetch-user:?1
sec-fetch-dest:document
accept-encoding:gzip, deflate, br
accept-language:zh-CN,zh;q=0.9
cookie:JSESSIONID=BACA32C62CC73505DD0178E34531D21C; _ga=GA1.1.1717905582.1633016465; JSESSIONID=E576986031221D734A3D7882557C867A

使用Request对象获取表单的信息

通过request对象可以获取表单中的输入信息,并将这些信息存入到指定的字符串中去

例如有下面一个表单

<form action="responseUserLogin.jsp" method="post">
    输入右面的认证码:<input type="text" name="verifyCodeDigit"/><br/>
    用户类型:<select name="type_User_Admin">
    <option value="1">前台用户</option>
    <option value="2">后台管理员</option>
      </select><br/>
    您的名称:<input type="text" name="userName"/><br/>
    您的密码:<input type="password" name="userPassword"/><br/>
    <input type="submit" value="提交" name="submitButton"/>
    <input type="reset" value="取消" />
 </form>
<body>
  <%! String verifyCodeDigit; %>
  <%! String type_User_Admin; %>
  <%! String userName; %>
  <%! String userPassword; %>
    <% request.setCharacterEncoding("UTF-8");
verifyCodeDigit = request.getParameter("paperTitle"); 
     if(request.getParameter("type_User_Admin").equals("1")) {
    type_User_Admin = "前台用户";
    }else{
            type_User_Admin = "后台管理员";
    }
    
      userName = request.getParameter("userName");
      userPassword = request.getParameter("userPassword");
     %>
 </body>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java Map集合中取键和值的4种方式举例

    java Map集合中取键和值的4种方式举例

    Java中的Map是一种键值对存储的数据结构,其中每个键都唯一,与一个值相关联,这篇文章主要给大家介绍了关于java Map集合中取键和值的4种方式,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • java中用数组实现环形队列的示例代码

    java中用数组实现环形队列的示例代码

    这篇文章主要介绍了java中用数组实现环形队列的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • HashMap原理及put方法与get方法的调用过程

    HashMap原理及put方法与get方法的调用过程

    这篇文章主要介绍了HashMap原理及put方法与get方法的调用过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • SpringBoot 统一异常处理的实现示例

    SpringBoot 统一异常处理的实现示例

    本文主要介绍了SpringBoot 统一异常处理的实现示例,目的就是在异常发生时,尽可能地减少破坏,下面就来介绍一下,感兴趣的可以了解一下
    2024-07-07
  • java8中:: 用法示例(JDK8双冒号用法)

    java8中:: 用法示例(JDK8双冒号用法)

    这篇文章主要给大家介绍了关于java8 中的:: 用法(JDK8双冒号用法)的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java8具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • spring使用Filter过滤器对Response返回值进行修改的方法

    spring使用Filter过滤器对Response返回值进行修改的方法

    这篇文章主要介绍了spring使用Filter过滤器对Response返回值进行修改,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • RxJava2 Scheduler使用实例深入解析

    RxJava2 Scheduler使用实例深入解析

    这篇文章主要为大家介绍了RxJava2 Scheduler使用实例深入解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Java实现随机生成大小写混合的卡密的步骤

    Java实现随机生成大小写混合的卡密的步骤

    在现代软件开发中,生成随机卡密是一个常见的需求,尤其是在需要为用户生成唯一识别码或安全令牌的场景中,卡密通常由数字和字母组成,有时还会包含特殊字符,本文通过代码讲解的非常详细,需要的朋友可以参考下
    2024-11-11
  • Java诊断工具Arthas安装与卸载的详细指南

    Java诊断工具Arthas安装与卸载的详细指南

    Arthas 是阿里巴巴开源的一款强大的 Java 诊断工具,能够帮助开发者在不重启应用的情况下,实时监控和诊断 Java 应用的运行状态,本文将详细介绍 Arthas 的多种安装方式、使用方法以及卸载步骤,帮助开发者快速上手并应用于实际开发中,需要的朋友可以参考下
    2025-02-02
  • Scala之Object的具体使用(小结)

    Scala之Object的具体使用(小结)

    这篇文章主要介绍了Scala之Object的具体使用(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06

最新评论