$.ajax 结果进error方法

发送ajax请求到后台(Java),debug后台数据没有问题,甚至自己写的结果

    PrintWriter out;
    try {
        out=response.getWriter();
        out.write("{'id':12,'name':'ok' }");
    } catch (IOException e) {
        e.printStackTrace();
    }

但是返回结果进error方法

        error:function(xhr,status,error){
            throw new Error("status:"+status+"; Error:"+error);
        }
        

具体结果:
Uncaught Error: status:parsererror; Error:SyntaxError: Unexpected token <

求教问题出在哪里?

阅读 8.1k
6 个回答
  1. 注意服务器写出响应的编码

  2. 注意服务器写响应的content-type

  3. 注意ajax解析的数据类型

java后台返回的json数据使用json序列化反序列化类库

直接请求这个url看看你的返回结果。

如果后台用的是springmvc,可能是controller方法里没加@Responsebody,然后ajax中的dataType:“json”

$ajax 中加入 dataType: 'json'

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