首页 新闻 会员 周边

前台发ajax,后台返回json,有数据!前台获取不到,试了好久

0
悬赏园豆:50 [已解决问题] 解决于 2019-05-18 16:19

前台请求

$.ajax({
//提交类型
type:"post",
//提交url
url:"/SSM1/tologin",
//提交的数据
data:{uid:$("#name").val(),upwd:$("#pwd").val()},
//返回数据格式
datatype:"json",
//成功返回调用的函数
success:function(data){
alert(data);
},
//调用出错执行的函数
error:function(data){
alert(data);
}
});

后台代码

@ResponseBody
@RequestMapping(value="/tologin",method= RequestMethod.POST)
public void tologin(@RequestParam("uid") String uid,@RequestParam("upwd")String upwd
,HttpServletResponse response) throws IOException{
// 解决后台返回数据给前台出现的乱码问题
//response.setContentType("text/javascript;charset=utf-8");
response.setContentType("application/json;charset=utf-8");
response.setCharacterEncoding("UTF-8");
//信息处理类
Result result = new Result();
//根据id查询是否存在该用户
TbUser user=userservice.findById(uid);
//如果存在判断密码
if(user!=null) {
String pwd=user.getUpwd();
if(pwd.equals(upwd)) {
result.setMsg("账号密码正确");
result.setCode(1);//1正确
result.setSuccess(true);//true成功正确
}else {
result.setMsg("密码错误");
result.setCode(-2);//-2密码错误
result.setSuccess(false);
}
}else {
result.setMsg("账号不存在");
result.setCode(-1);//-1失败
result.setSuccess(false);
}

        JSONObject jsonObject=new JSONObject();
        jsonObject.put("result", result);
        response.getWriter().print(jsonObject);
        );
}

TuiTuiTui的主页 TuiTuiTui | 初学一级 | 园豆:3
提问于:2019-05-18 10:29
< >
分享
最佳答案
0

后台返回 json 数据时有没有返回响应头 content-type: application/json; charset=utf-8

收获园豆:50
dudu | 高人七级 |园豆:30994 | 2019-05-18 10:55

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:07

@TuiTuiTui: 你在 success 的回调函数中也是 alert(data) ,与 error 回调函数一样,这样看不出是否成功,建议 alert(data.result.msg)

dudu | 园豆:30994 (高人七级) | 2019-05-18 11:12

@dudu: alert(data.result.msg)不弹窗,得不到值

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:15

@TuiTuiTui: 浏览器控制台有报错吗?

dudu | 园豆:30994 (高人七级) | 2019-05-18 11:22

@dudu: 好像有

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:26

@TuiTuiTui: 试试 alert(JSON.stringify(data))

dudu | 园豆:30994 (高人七级) | 2019-05-18 11:34

@dudu: 获取到了

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:36

@dudu: 大哥,这个是什么方法啊?怎么跟别的不一样?这种情况是怎么回事啊,不懂,请教一下

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:38

@TuiTuiTui: JSON.stringify 是将返回的数据序列化为 json 字符串

dudu | 园豆:30994 (高人七级) | 2019-05-18 11:39

@TuiTuiTui: 从输出看,服务端的 json 序列化有问题

dudu | 园豆:30994 (高人七级) | 2019-05-18 11:40

@dudu: 感觉有点麻烦,简单直接一点的要怎么写

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:41

那我要获取具体的一个数据怎么写

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:43

@dudu: 后台json序列化?怎么改

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:43

@TuiTuiTui: 建议你自己多试试,我对 java 不熟悉

dudu | 园豆:30994 (高人七级) | 2019-05-18 11:47

@dudu: 嗯好的,谢谢哈,我再试试

TuiTuiTui | 园豆:3 (初学一级) | 2019-05-18 11:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册