纵有疾风起
人生不言弃

jquery ajax get success not called; ajax调用返回200,但是没有调用succes

管理后台不知道为啥出了点小bug,以前管用的一个功能突然不能用了,看了下数据接口是调用成功了,大周末的,又不好麻烦FE,只好自己看看了。   通过查看源代码发现,使用了jquery里的ajax方法,通过get回来的结果并没有按预期的执行success回调。   $.ajax({     url: ‘/antispammanage/filterSpecial/?kw=’+encodeURIComponent(kw),     type: ‘get’,     dataType: ‘json’,     success: function(data){         var d = JSON.parse(data.trim());         $(‘.producekw’).val(d.kw);     }
  查看网络请求,接口是返回成功的。 然后对该方法添加了error回调,打印出返回信息, readystate=4, 返回头是 200 ,但是为啥就不success呢。   google了下后发现,原来问题出在返回信息的content-Type上,返回的不是json类型,但是ajax方法里指定了类型为json,所以ajax方法在解析json的时候出错了。解决办法有两个: 1.接口返回的header里指定content-Type为json, 2.ajax调用的时候,指定dataType为text,然后自己用JSON.parse进行解析。


本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

未经允许不得转载:起风网 » jquery ajax get success not called; ajax调用返回200,但是没有调用succes
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录