接口:
package com.wdg.index.controller;
import java.util.Map;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/indexcontroller")
public class IndexController {
@RequestMapping(value="/pageload",produces = "application/json; charset=UTF-8")
public @ResponseBody String pageload(Map<String, String> reqMap){
System.out.println("你好");
return null;
}
}
调用:
function execFunc(methodname, param, callback) {
var strs = [];
if (methodname.indexOf('/') > 0) {
strs = methodname.split('/');
} else {
strs = methodname.split('.');
}
var actionname = strs[0];
var funcname = strs[1];
var serviceUrl = getProjectURL();
var json = null;
params = JSON.stringify(param);// 这个是将参数转换为json
$.ajax({
url : serviceUrl + actionname + '\/' + funcname,
contentType : "application/json;charset=UTF-8",
type : 'post',
data : params,
success : function(data) {
callback(data);
},
error : function(error) {
json = null;
callback(json);
console.log('接口不通' + methodname + error);
}
});
}
execFunc("indexcontroller.pageload",{},function(data){
console.log(data);
})
错误:
415 (Unsupported Media Type)
解决办法:
pom.xml中新增jar:
<!-- Sring前台传入的json和参数绑定 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.1</version>
</dependency>
希望对你有所帮助