获取Http请求中的body内容方法

获取HTTP字符串正文
String getBodytxt(HttpServletRequest request) { BufferedReader br = request.getReader(); String str, wholeStr = ""; while((str = br.readLine()) != null){ wholeStr += str; } return wholeStr; }
获取HTTP二进制正文
private String getBodyData(HttpServletRequest request) {
	StringBuffer data = new StringBuffer();
	String line = null;
	BufferedReader reader = null;
	try {
		reader = request.getReader();
		while (null != (line = reader.readLine()))
			data.append(line);
	} catch (IOException e) {
	} finally {
	}
	return data.toString();
}
使用spring注解获取(传过来的内容必须要符合json格式才行)
@PostMapping("/test")
@ResponseBody
public String test(HttpServletRequest httpServletRequest, @RequestParam JSONObject jsonObject){
 String username =  jsonObject.get("username").toString();
   String pwd = jsonObject.get("pwd").toString();
}
获取Param传过来的参数(xxx?name=xxx&age=xxx)(也可以不用这种方法,因为servlet中有直接的方法获取Param值)
@RequestMapping(value = "/testurl", method = RequestMethod.POST)
@ResponseBody
public ServiceResult TestUrl(HttpServletRequest request,@RequestParam("username")String username,
@RequestParam("pwd")String pwd)  {
  String txt = username + pwd;
}

通过第一种和第二种方法获取的字符串会有反斜杠可以通过阿里巴巴的json插件去除反斜杠
JSONObject jsonObject = (JSONObject) JSON.parse(String.valueOf(data));(data是获取的正文字符串)




posted @   白菜豆腐粉丝汤  阅读(1830)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示