参考来源 ; https://www.cnblogs.com/zhangruiqi/p/7880642.html
前段代码
$.ajax({
type:'GET',
url: url,
data: {
'phoneNumber': phoneNumber,
'code': code
}, //这行不能省略,如果没有数据向后台提交也要写成data:{}的形式
dataType: "jsonp",
// jsonp: "successCallback", 制定key的名称,默认callback
// jsonpCallback: 'successCallback' //指定回调函数名,默认success
success: function(data) {
if(data.state==1){
alert("登陆成功!");
}else{
alert("登陆失败!");
}
},
error: function(data) {
alert("ajax错误");
console.log(data)
}
});
后台服务器
@ResponseBody
@RequestMapping(method = RequestMethod.GET, value = "/login")
public void login(String phoneNumber, String code, HttpSession session, HttpServletResponse response, String callback) {
response.setHeader("Access-Control-Allow-Origin", "*");
ResultViewModel resultViewModel = new ResultViewModel();
resultViewModel.setState(ResultViewModel.StateEnum.NORMAL.getValue());
resultViewModel.setMsg("开发者");
session.setAttribute("phoneNumber", phoneNumber);
session.setAttribute("playerName", "开发者");
writerRult(resultViewModel, response, callback);
}
/**
* 发送结果
* @throws IOException
*/
private void writerRult(ResultViewModel resultViewModel, HttpServletResponse response, String callback) {
PrintWriter out = null;
try {
out = response.getWriter();
Object o = JSON.toJSON(resultViewModel);
out.println(callback + "(" + o.toString() + ")");
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}