ajax得不到controller的值

问题描述

别人写的后台 我在自己写接口 然后用ajax调用得不到数据 以前没写过接口 不清楚哪里错了 我都不是很清楚js和html文件放哪里

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
这是controller

@Controller
@RequestMapping("/some")
public class SomeTestController {

@RequestMapping(value ="/test" )
@ResponseBody
public String getAirportList(HttpServletRequest request) {
    JSONObject json = new JSONObject();
    json.put("name", "jack");
    
    
    return json.toJSONString();
}
}

这是ajax

 $.ajax({
type:'post',
url:'/some/test',

dataType:'json',
success:function (data) {
    alert(data);
},
error:function () {
    alert("error");
}
})

你期待的结果是什么?实际看到的错误信息又是什么?

然后打开网页 就只会弹窗出error

阅读 1.9k
1 个回答

很久没碰java了。
在spring中@ResponseBody 的意思就是讲结果转化为json,所以你这里可以直接返回数据就行。
如果这个controller 只是当做接口使用的话,可以使用@RestController 这样就不用每个method写@ResponseBody 了。

我没看出阿里有什么问题。如果能提供下chrom f12 newWork里面对应的网络请求,估计可以看出问题。

并且,你这里ajax err的回调函数,可以把eror打印出来,而不是只打印一个alert(error),这样根本无法去查看问题
error 的回调函数是有入参的,可以把这个打印出来,里面会告诉你错在哪里。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题