如何使用post方法使用ajax命中服务器

时间:2016-12-12 06:22:25

标签: javascript java ajax

这是我的HTML代码

          function loadDoc(){
 var num = '{"empid": 45,"name": "gaurav","salary":566.55}';
  $.ajax({

url: 'http://localhost:9029/addS',
method: 'POST',
data: num,
success: function(response){
      console.log("response::::"+response);
      $("#output").text(response);
},

error: function( jqXHR,textStatus, errorThrown){

    console.log("Error askdjk");
    console.log(jqXHR);
    console.log(textStatus);
    console.log(errorThrown);
}

  });   
}

以下是我的java代码

     @RequestMapping(value="/addS",method={RequestMethod.POST})

     public String addEmployee(@RequestParam int empid,@RequestParam String name,@RequestParam double salary){

    return "employee added successfully(Separate): "+name;
}

M得到错误400 ...我尝试了很多但却无法解决问题.....

2 个答案:

答案 0 :(得分:0)

您是否在ajax请求中尝试使用data: num而不是{{1}}。

答案 1 :(得分:0)

我认为你需要一个请求体的对象,例如:

public class Num{
 public int empid,
 public String name,
 public double salary
}


然后你需要一个@RequestBody

@RequestMapping(value="/addS",method={RequestMethod.POST})

public String addEmployee(@RequestBody Num num){

    return "employee added successfully(Separate): "+num.name;
}

或者将您的ajax代码更改为GET。