六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 52|回复: 0

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

[复制链接]

升级  30%

3

主题

3

主题

3

主题

童生

Rank: 1

积分
15
 楼主| 发表于 2013-1-29 12:21:00 | 显示全部楼层 |阅读模式
前台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 stubif(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",看来原理上还要多下功夫啊,调试了半天的代码,原来是因为这个。。。
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表