request对象的介绍和获取请求头信息

Posted 是一个小迷糊吧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了request对象的介绍和获取请求头信息相关的知识,希望对你有一定的参考价值。

#request对象的介绍和获取请求头信息

##request对象介绍

作用:request对象中封存了当前请求的所有请求信息
使用
获取请求头数据

req.getMethod();//获得客户端向服务器端传送数据的方法
req.getRequestURL();//返回全路径
req.getRequestURI();//返回除去host(域名或者ip)部分的路径
req.getScheme();//返回当前链接使用的协议;比如,一般应用返回http;SSL返回https;

获取请求行数据

req.getHeader("键名");//获得HTTP协议定义的文件头信息 
req.getHeaderNames();//Enumeration 类的枚举对象,该对象包含所有 request header 的名字。

获取用户数据

req.getParameter("键名");//获得客户端传送给服务器端的有标志名的指定的参数值 
req.getParameterValues("键名");//返回同键不同值的请求数据(多选),返回数组。
req.getParameterNames();//返回所有用户请求数据的枚举集合

注意
如果要获取的请求数据不存在,不会报错,返回null。
request对象有tomcat服务器创建,并作为实参传递给处理请求的servlet的service方法
下面是代码示例(部分)

@Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException 
        //获取请求头数据
            //获取请求方式
                String method = req.getMethod();
                System.out.println(method);
            //获取请求URL
                StringBuffer url = req.getRequestURL();
                System.out.println(url);
            //获取URI
                String uri = req.getRequestURI();
                System.out.println(uri);
            //获取协议
                String h = req.getScheme();
                System.out.println(h);
      //请求行数据
            //获取指定的请求信息
                String vslue = req.getHeader("User-Agent");
                System.out.println(vslue);
            //获取所有的请求行的键的枚举
        Enumeration e = req.getHeaderNames();
       /* while (e.hasMoreElements())
            System.out.println(e.nextElement());
        *///(第一种遍历方法)
        while (e.hasMoreElements())
            String name = (String) e.nextElement();
            String value = req.getHeader(name);
            System.out.println(name+":"+value);
        //(第二种遍历方法)
       //获取用户数据
                 String name = req.getParameter("uname");
                String pwd = req.getParameter("pwd");
                System.out.println(name+":"+pwd);
                //多选获取方式
                String[] favs=req.getParameterValues("fav");
                if(favs!=null)
					for(String fav:favs)
								System.out.println(fav);

					
		

以上是关于request对象的介绍和获取请求头信息的主要内容,如果未能解决你的问题,请参考以下文章

14_Request对象

java获取request的请求头信息

java 获取request请求头所有信息

视图函数获取请求头信息

直播系统源码,java 获取request请求头所有信息

java获取request的请求头信息