• Java如何从HttpServletRequest中读取HTTP请求的body


    首先贴出原文地址,尊重原作者

    http://blog.csdn.net/zxygww/article/details/47045055

    注意:下面方法已验证通过。

    HTTP请求中的是字符串数据:

    //字符串读取
    
    void charReader(HttpServletRequest request) {
    
    BufferedReader br = request.getReader();
    
    String str, wholeStr = "";
    while((str = br.readLine()) != null){
    wholeStr += str;
    }
    
    System.out.println(wholeStr);
    
    }
    
    //二进制读取
    
    void binaryReader(HttpServletRequest request) {
    
    int len = request.getContentLength();
    ServletInputStream iii = request.getInputStream();
    byte[] buffer = new byte[len];
    iii.read(buffer, 0, len);
    
    }

    注意:

    request.getInputStream(); 

    request.getReader();

    和request.getParameter("key");

    这三个函数中任何一个函数执行一次后(可正常读取body数据),之后再执行就无效了。

    从HttpServletRequest中得到完整的请求URL

    String getFullURL(HttpRequest request) {

    StringBuffer url = request.getRequestURL();
    if (request.getQueryString() != null) {
    url.append(’?’);
    url.append(request.getQueryString());
    }
    return url.toString();
    }
  • 相关阅读:
    redis发布订阅
    CSS 布局
    CSS 布局
    CSS Float(浮动)实例
    CSS 布局
    CSS Float(浮动)
    CSS Position(定位)实例
    CSS Position(定位)
    CSS Display(显示) 与 Visibility(可见性)实例
    CSS Display(显示) 与 Visibility(可见性)
  • 原文地址:https://www.cnblogs.com/zhang-cb/p/6073781.html
Copyright © 2020-2023  润新知