jquery ajax post数据给servlet无法收到的原因

前台js

$(document).ready(function(){
	$("#test").click(function(){
		var url = "function?method=echo";
		var data = {
			keyword_query: "Tim Berners-Lee"
		};
		$.ajax({
		   url: url,
		   type: "POST",
		   data: data,
//		   dataType: 'json',
		   contentType: "text/html",






		   success: function(referenceSet){
		   		$("body").append("referenceSet: \n" + "<h3>" + (referenceSet) + "</h3>");
		   },
		   error: function(XMLHttpRequest, textStatus) {
		   		$("body").append("textStatus: \n" + "<h3>" + textStatus + "</h3>");
		   }
		});
	});
	
});

 后台java

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		if(request.getParameter("method").equals("echo")) {
		    BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream)request.getInputStream()));
            String line = null;
            StringBuilder sb = new StringBuilder();
            while((line = br.readLine())!=null){
                sb.append(line);
            }
			response.getWriter().print(sb);
		}
	}

 红色字体部分

contentType: "text/html",





我一开始没有加上,这样后台的servlet用

request.getParameter(arg0)

可以得到数据,但是我想利用

request.getInputStream()

获得前台的全部数据就不可以了,即post的所有

后来上网查看了下,虽然没有我的相同的问题,但是有java的,jsp的类似的问题,原来是要设置

contentType: "text/html",





看来原理上还要多下功夫啊,调试了半天的代码,原来是因为这个。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值