【JavaWeb】ajax请求返回200却进入error
2017-12-01 15:59
120 查看
在前后端分离测试时,发现ajax中的请求路径为
浏览器弹出的结果为: error:200
既然请求成功为什么还会进入error呢?检查发现Ajax的请求地址和HTML文件不在同一个域中,产生了跨域问题,所以将返回结果类型由json改为jsonp以支持跨域请求,同时指定jsonp回调函数的函数名为
修改后的代码如下:
后台代码(返回的json数据应该加上回调函数的名称):
http://localhost/blog/load.do时,服务器返回数据成功,状态码为200,但却进入error回调函数中,代码如下:
$.ajax({ type: "post", url: "http://localhost/blog/load.do", data: { }, dataType: "json", success: function (data) { alert(data); }, error: function (data) { alert("error:" + data.status); } });
浏览器弹出的结果为: error:200
既然请求成功为什么还会进入error呢?检查发现Ajax的请求地址和HTML文件不在同一个域中,产生了跨域问题,所以将返回结果类型由json改为jsonp以支持跨域请求,同时指定jsonp回调函数的函数名为
jsonpCallback:jsonpcallback,同时在服务器端将返回的数据修改为jsoncallback(json数据);
修改后的代码如下:
$.ajax({ type: "get", url: "http://localhost/blog/load.do", data: { "category": category, "page": page, "num": num }, dataType: "jsonp", jsonpCallback: "jsonpcallback", success: function (data) { alert(data); }, error: function (data) { alert("error:" + data.status); } });
后台代码(返回的json数据应该加上回调函数的名称):
![](https://i.imgur.com/moy5yMR.png)
相关文章推荐
- ajax请求返回状态为200但还是进入error事件
- ajax请求返回状态为200但还是进入error事件
- springmvc中 ajax请求错误,返回406,并一直进入error的回调方法,以及返回参数为Object
- ajax请求返回数据成功但是一直进入error方法中
- ajax跨域,使用json,crossDomain,请求返回状态200,但是走的error的原因以及解决方法
- ajax请求返回结果进入error原因
- AJAX请求状态码返回200却跳到error的function
- javaweb局部刷新-ajax异步请求springMVC显示返回的jsp内容,代替iframe
- ajax请求返回结果进入success还是error
- Ajax返回状态为200但进入error方法
- ajax请求不等服务器返回直接进入error
- $.ajax请求返回数据中status为200,回调的却是error?
- ajax 跨域请求返回200 但是不进success--1
- thinkphp ajax 进入error 返回多个红点 解决方法
- ajax返回数据成功 却进入error方法
- Ajax请求正常返回了数据、但是总是走error分支
- ajax跨域jsonp并且post请求No 'Access-Control-Allow-Origin'以及执行error时readyState=4同时status=200的解决方法
- Ajax请求状态200,却走error的函数
- java.lang.OutOfMemoryError: PermGen space及其解决方法【使用webservice请求web服务的时候报此错误】
- 在Web应用中,会用到大量的Ajax请求,在Ajax请求中存在的一个问题就是如何判断session超时,在网上找到的一个java中处理此问题方法: