• 14_Request对象


    【HttpServletRequest简介】

    HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获取客户端的这些信息。

    【获取当前请求的URI和URL】

    request.getRequestURI();   //返回客户端发出请求的完整URL
    request.getRequestURL();   //返回客户端发出请求的请求行中的资源名部分

    【获取 当前请求行中的参数部分】

    request.getQueryString();

    【获取 当前发出请求的客户端的IP地址】

    request.getRemoteAddr();

    【获取当前发出请求的客户端的完整主机名】

    request.getRemoteHost();

    【获取当前发出请求的客户端的网络端口号】

    request.getRemotePort();

    【返回Web服务器的IP地址】

    request.getLocalAddr();

    【返回Web服务器的主机名】

    request.getLocalName();

    【返回当前客户端请求的请求方式】

    request.getMethod();

    【使用request获取请求头相关的方法(使用了Servlet3.0)】

    [ QWE.java (Servlet)]

    package com.Higgin.servlet;
    
    import java.io.IOException;
    import java.util.Enumeration;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    @WebServlet("/QWE")
    public class QWE extends HttpServlet {
        private static final long serialVersionUID = 1L;
           
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            
            System.out.println("Accept-Encoding:"+request.getHeader("Accept-Encoding"));
            
            System.out.println("--------------遍历Accept-Encoding中所有的value------------------");
            Enumeration e=request.getHeaders("Accept-Encoding"); 
            while(e.hasMoreElements()){
                String value=(String) e.nextElement();
                System.out.println(value);
            }
            System.out.println("-------------遍历所有的请求头的名字和属性-------------------");
            Enumeration ehs=request.getHeaderNames(); //获取所有的请求头名字
            while(ehs.hasMoreElements()){
                String name=(String) ehs.nextElement();
                String value=request.getHeader(name);
                System.out.println(name+" ----- "+value);
            }
        }
    
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
        }
    
    }

    【运行结果】

    [ 客户端浏览器 ]

    [ 服务端控制台 ]

    【获取POST/GET传递的参数】

    String name=request.getParameter("name");  //获取一个参数
    String[] names=request.getParameterValues("names"); //获取多个参数
    Enurmation<String> names=request.getParameterNames(); //将发送请求页面中form表单里所有具有name属性的表单对象获取(包括button).返回一个Enumeration类型的枚举.
  • 相关阅读:
    JSON字符串转对象,List集合,需要的jar 包
    VirtualBox 更改虚拟磁盘大小
    SpringBoot webSocket 发送广播、点对点消息,Android接收
    window系统下添加 glassfish 的系统服务
    idea把java web项目打成war包
    栈类型数据的运用
    leetcode实践:找出两个有序数组的中位数
    leetcode实践:通过链表存储两数之和
    通过监控Nginx日志来实时屏蔽高频恶意访问的IP
    Java版分布式ID生成器技术介绍
  • 原文地址:https://www.cnblogs.com/HigginCui/p/5984754.html
Copyright © 2020-2023  润新知