1.后台代码
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class ReportController {
//post接口
@RequestMapping(value="testdemo1",method=RequestMethod.POST,produces="text/plain;charset=UTF-8")
@ResponseBody
public synchronized String testdemo1(@RequestBody String name){
System.out.println("我是post--"+name);
return name;
}
//produces="application/json;charset=UTF-8" //返回json格式
@RequestMapping(value="testdemo2/{name}",produces="text/plain;charset=UTF-8")
@ResponseBody
public synchronized String RestFul(@PathVariable("name") String name){
System.out.println("name=="+name);
return name+"我是结果";
}
}
2.前端ajax调用测试(html)
<input type="button" id="restful1" value="获取1"></input>
<input type="button" id="restful2" value="获取2"></input>
3.js
$("#restful1").click(function(){
var a = '{"b":"123","s":[{"a":"1"}]}';
var a1 = "{'b':'123','s':[{'a':'1'}]}";
var b = ["aa","bb"];
var b1 = "['aa','bb']";
var c = {"a":"123"};
//var name = {"name":"测试数据"};
var name={"name":"测试数据","s":[{"a":"1"}]};
$.ajax({
url:"/testdemo1",
type:"post",
data:JSON.stringify(name),
contentType :"application/json",
success:function(result){
alert(result);
}
})
})
$("#restful2").click(function(){
var a = '{"b":"123","s":[{"a":"1"}]}';
//var name = {"name":"测试数据"};
//var name={"name":"测试数据","s":[{"a":"1"}]};
$.ajax({
url:"/testdemo2/"+a,
type:"post",
contentType :"application/json",
success:function(result){
alert(result);
}
})
})