搜索

首页  >  问答  >  正文

java - ajax成功到后台不知道为什么一直回调失败函数

雷雷
漂亮男人漂亮男人2775 天前661

全部回复(7)我来回复

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-17 10:08:19

    请求成功有数据返回,很大可能与你的返回数据格式不对有关系。因为你设置了dataType : 'json' 预期服务器返回的数据类型。这样往往会进入 error 回调。你排除一下返回数据。

    而且,error是有三个回调参数的,请自行打印出来。

    ajax 跳入error的一些原因

    回复
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-17 10:08:19

    弹出你的返回值,看看数据就知道了

    回复
    0
  • 巴扎黑

    巴扎黑2017-05-17 10:08:19

    HttpServletResponse和ajax的回调冲突了,去掉HttpServletResponse就行。

    回复
    0
  • 迷茫

    迷茫2017-05-17 10:08:19

    看到你的 dataType : 'json', 要求的是服务器返回json格式,
    倘若服务器返回的数据不是json格式的数据,则会走进失败的回调中。

    回复
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-17 10:08:19

    将你AJAX配置dataType:"text",然后用alert(data)查看返回值

    由于Ajax请求和response不一样,得到数据后页面不需要再渲染,所以不需要RESPONSE跳转到新页面。所以不需要RETURN,而是通过PrintWriter打印到请求的页面
    @RequestMapping(value="/checkIntegral",method = RequestMethod.GET)
    @ResponseBody
    public void checkIntegral(@RequestParam String carOwnerID ,HttpServletRequest request,HttpServletResponse response){

    Long integral = impl.checkIntegral(Long.valueOf(carOwnerID));
        PrintWriter writer=response.getWriter();
        writer.write(String.valueOf(integral));
        writer.flush();
        writer.close();

    }

    回复
    0
  • ringa_lee

    ringa_lee2017-05-17 10:08:19

    没注意这个ajax是跨域请求的 。

    回复
    0
  • 怪我咯

    怪我咯2017-05-17 10:08:19

    你的返回值数据类型是json,你后台却给他返回了一个Map,把你的map转成json

    回复
    0
  • 取消回复