当前位置:   article > 正文

HttpServletRequest获取POST请求的参数_servlet获取post请求参数

servlet获取post请求参数

除了@RequestBody方式外,我们还可以通过HttpServletRequest方式获取参数。

比如参数是:

{
  "code": "xxx"
}
  • 1
  • 2
  • 3

获取方式:

import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import javax.servlet.http.HttpServletRequest;
import java.io.BufferedReader;
import java.io.IOException;

private JSONObject getJsonRequest(HttpServletRequest request) {
   JSONObject result = null;
   StringBuilder sb = new StringBuilder();
   try (BufferedReader reader = request.getReader();) {
       char[] buff = new char[1024];
       int len;
       while ((len = reader.read(buff)) != -1) {
           sb.append(buff, 0, len);
       }
       result = JSONUtil.parseObj(sb.toString());
   } catch (IOException e) {
       log.error("", e);
   }
   return result;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

sb.toString()就是上面json字符串,转成JSONObject对象后就可以拿到:

@RequestMapping(value = "/login", method = RequestMethod.POST)
public Result login(HttpServletRequest request) {
	JSONObject param = this.getJsonRequest(request);
	String code = param.getStr("code");
	
    // ...
    
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/309861
推荐阅读
相关标签
  

闽ICP备14008679号