设为首页 加入收藏

TOP

Java基础之HttpServletRequest请求(一)
2019-08-04 00:09:37 】 浏览:90
Tags:Java 基础 HttpServletRequest 请求

   HttpServletRequest请求是获取请求行、请求头和请求体;可以通过这个方法设置防盗链,获取地址。牢记解决乱码的方式。


一、HttpServletRequest:


  概述和运行流程详见HttpServletResponse!


二、获取HTTP请求:



 三、获取请求行:


1、获得客户端的请求方式:


getMethod()    获得String类型;


2、获得请求的资源:


getContextPath() 获得String类型的 web应用的名称(项目名)


getQueryString() 获得 get提交url 地址后的参数字符串;


 getRequestURI() 获取URI地址String类型


 getRequestURL() 获取URL地址StringBuffer类型


request.getRemoteAddr() 获得访问的客户端IP地址


 


protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // 获取请求方式
        String method = request.getMethod();
        System.out.println("请求方式为:" + method);
        // 获取请求URI
        String URI = request.getRequestURI();
        System.out.println("URI为" + URI);
        // 获取请求URL
        StringBuffer URL = request.getRequestURL();
        System.out.println("URL为:" + URL);
        // URI为/WEB/LineServlet
        // URL为:http://localhost:8080/WEB/LineServlet
        // 获取WEB项目名称
        String name = request.getContextPath();
        System.out.println("WEB项目名称为:" + name);
        // 获取get请求后url后的字符串
        String query = request.getQueryString();
        System.out.println("get请求的参数为:" + query);
        // 获取客户端的ip地址
        String ip = request.getRemoteAddr();
        System.out.println("ip地址为:" + ip);
    }


 


四、获取请求头:


 getHeader(String name)


referer 头的作用:获取该访问的来源,做防盗链


 


protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // 获取refere头
        String refere = request.getHeader("Referer");
        String content = null;
        if(refere.startsWith("http://localhost:8080")){
            content="真的离婚了!";       
        }else{
            content="你是小偷!";
        }
        //解决乱码
        response.setContentType("text/html;charset=utf-8");
        response.getWriter().write(content);       
    }


 


 


 


五、获得请求体:


1、解决post提交方式的乱码:request.setCharacterEncoding("UTF-8");


2、解决get提交的方式的乱码:


            parameter = new String(parameter.getbytes("iso8859-1"),"utf-8");


 


protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //解决中文乱码问题(post请求)
//        request.setCharacterEncoding("UTF-8");
        //获取请求参数
&

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Java基础之HttpServletResponse响.. 下一篇Java中转发和重定向的说明

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目