现在在做的项目用到了SpringMVC框架,需要从前端angular接收请求的JSON数据,为了测试方便,所以直接先用AJAX进行测试,不过刚开始用平时用的ajax方法,提交请求会出现415或者400错误,经过研究,终于可以了,现在做个总结。
js代码:
-
function postSimpleData() {
-
$.ajax({
-
type:
"POST",
-
url:
"Service/SimpleData",
-
contentType:
"application/json",//必须有
-
dataType:
"json",//表示返回值类型,不必须
-
data:
JSON.stringify({
‘foo‘:
‘foovalue‘,‘bar‘:
‘barvalue‘ }),//相当于 //data: "{‘str1‘:‘foovalue‘,‘str2‘:‘barvalue‘}",
-
@H_502_127@
success:
function (jsonResult) {
alert(jsonResult);
}
});
}
function login(){
$.ajax({
url:
"Service/login",
type:
"POST",
contentType:
"application/json",
dataType:
"json",
data:
JSON.stringify({
MachineIP:
"127.0.0.1",
AppTag:
"4",
RequestInfo:{
StaffCode:
"",
Password:
"",
StaffCard:
"01411"
},
}),
async:
true,
success:
function(data) {
var ss =
JSON.stringify(data);
$(
"#result").val(ss);
console.log(ss);
}
});
}
function postEmployees() {
$.ajax({
type:
"POST",
url:
"Service/Employees",
contentType:
"application/json",
dataType:
"json",
data:
JSON.stringify({
"Employees": [
{
"firstName":
"Bill","lastName":
"Gates" },
{
"firstName":
"George","lastName":
"Bush" },
{
"firstName":
"Thomas","lastName":
"Carter" }
]
@H_301_647@
}),
success:
function (jsonResult) {
alert(jsonResult);
}
});
}
JAVA Controller代码:
-
@RequestMapping(value =
"/SimpleData",method = RequestMethod.POST)
-
@ResponseBody
-
public ActionResult SimpleData(string foo,string bar) {
-
return Json(
"SimpleData",JsonRequestBehavior.AllowGet);
-
}
-
-
@RequestMapping(value =
"/login",method = RequestMethod.POST)
-
@H_502_127@