POST请求中的null参数

时间:2014-08-10 06:11:34

标签: jquery servlets

我将使用jQuery Ajax发布请求:

var xhr = $.ajax({
               url: "/UsersCounter", 
               type: "POST", 
               cache: false, 
               data: {"emailAddr": "example@domain.com"}, 
               dataType: "text", 
               contentType: "application/json"
         });

和服务器端我有一个简单的servlet来处理http请求:

  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

   String x=req.getParameter("emailAddr");
   ...
  }

在浏览器中,emailAddr的参数在POST请求中可见,但x的值在servlet中为null。这段代码有什么问题吗?

1 个答案:

答案 0 :(得分:-1)

除了这一行,每件事情都很好

  data: {"emailAddr": "example@domain.com"},

“emailAddr”不应该在引号中,而是在语句

之后使用
 data: {emailAddr: "example@domain.com"},

我认为现在这样可以正常使用

除此之外你可以使用数据类型application / json然后在数据中你可以使用json.stringify来避免在向服务器调用异步请求之前的简单错误。