request中获取post的json对象数据content-type=“text/plain”
2021-06-10 10:04
标签:通过 请求 发送 param read pen exception obj key值 request中获取post的json对象数据content-type=“text/plain” 标签:通过 请求 发送 param read pen exception obj key值 原文地址:http://www.cnblogs.com/SimonHu1993/p/7295888.html
其实采用http://www.cnblogs.com/SimonHu1993/p/7295750.html中的方法一都能获取到,
就是通过获取request中的流数据,拿到json数据,理论上应该适用各种content-type的请求数据。
/**
*获取 request 中用POST方式"Content-type"是
* "text/plain"发送的 json数据
* @author: Simon
* @date: 2017年8月6日 下午7:44:09
* @param request
* @return
* @throws IOException
*/
public static String getPostByTextPlain(HttpServletRequest request) throws IOException{
BufferedReader reader = request.getReader();
char[] buf = new char[512];
int len = 0;
StringBuffer contentBuffer = new StringBuffer();
while ((len = reader.read(buf)) != -1) {
contentBuffer.append(buf, 0, len);
}
String content= contentBuffer.toString();
return content;
}
//在controll中进行调用;
String content = HttpJsonUtils.getPostByTextPlain(request);
//根据json数据中对象的key值及其类型取出相应的参数值
JSONObject jsObject = JSONObject.fromObject(content);
try {
usermob = jsObject.getString("usermob");
cpid = jsObject.getString("cpid");
spid = jsObject.getString("spid");
type = jsObject.getString("type");
ordertime = jsObject.getString("ordertime");
canceltime = jsObject.getString("canceltime");
endtime = jsObject.getString("endtime");
channelcode = jsObject.getString("channelcode");
province = jsObject.getString("province");
area = jsObject.getString("area");
ordertype = jsObject.getString("ordertype");
videoid = jsObject.getString("videoid");
} catch (Exception e) {
LOGGER.info("发生错误*****" + e.getMessage());
}
上一篇:JS之DOM
文章标题:request中获取post的json对象数据content-type=“text/plain”
文章链接:http://soscw.com/essay/93103.html