今天遇到的问题,总结一下
jQuery的$ajax({
contentType:"application/json", //发送信息至服务器时内容编码类型。
})
这样的方式提交时,如果指定contentType为application/json;此时后台通过传统的getParameter("属性名")不能够获取前端传过来的数据,
此时需要 使用
http://blog.csdn.net/mhmyqn/article/details/25561535 这里的方法去重新获取;代码如下:
privateString getRequestPayload(HttpServletRequest req) {
StringBuildersb = new StringBuilder();
try(BufferedReaderreader = req.getReader();) {
char[]buff = new char[1024];
intlen;
while((len = reader.read(buff)) != -1) {
sb.append(buff,0, len);
}
}catch (IOException e) {
e.printStackTrace();
}
returnsb.toString();
}
我是用的jQuery版本是1.10,是不需要指定content-type的,它会默认使用:Content-Type: application/x-www-form-urlencoded
我的问题就是制定了content-type,又取用getParameter的方式去取值,所以就死活取不到;