javascript - ajax中的 textStatus 报错为 parsererror?
问题描述
ajax中的 textStatus 报错为 parsererror。
<!DOCTYPE html><html> <head><meta charset='UTF-8'><title></title> </head> <body><script src='https://www.haobala.com/wenda/js/jquery-1.8.0.min.js' type='text/javascript' charset='utf-8'></script><script src='https://www.haobala.com/wenda/js/jq.js' type='text/javascript' charset='utf-8'></script><script type='text/javascript'> $.ajax({type: 'GET',url: 'http://192.168.20.205:8080/platform/banner/bannerApi',async:true,dataType: 'jsonp', jsonp: 'callback',success:function(req){ console.log(req); }, error:function(XMLHttpRequest, textStatus, errorThrown) {alert(XMLHttpRequest.status);//400 alert(XMLHttpRequest.readyState);//2 alert(textStatus);//parsererror } });</script> </body></html>
求大神指点,之前真心没有碰到这种问题,获取其他方法也可以,坐等
问题解答
回答1:这个大概要结合后台,指明一个名字为 jsonpCallback 参数吧。
回答2:返回的东西是jsonp格式吗?
回答3:题主,这个是跨域问题如果后端是你写的话你可以通过配置Cors,代码如下,希望能帮到你,对了spring要扫描到
/** * Created by sunny on 2017/6/22. */public class CorsConfig extends WebMvcConfigurerAdapter { @Override public void addCorsMappings(CorsRegistry registry) {registry.addMapping('/**').allowedOrigins('*').allowCredentials(true).allowedMethods('GET', 'POST', 'DELETE', 'PUT').maxAge(3600); } @Override public void addInterceptors(InterceptorRegistry registry) {WebContentInterceptor webContentInterceptor = new WebContentInterceptor();CacheControl nocache = CacheControl.noCache();webContentInterceptor.addCacheMapping(nocache, '/**');registry.addInterceptor(webContentInterceptor); }}回答4:
后台返回的dataType与ajax请求的dataType不一致
相关文章:
1. docker绑定了nginx端口 外部访问不到2. debian - docker依赖的aufs-tools源码哪里可以找到啊?3. dockerfile - [docker build image失败- npm install]4. docker gitlab 如何git clone?5. 如何判断数组写入数据库有重复的值6. macos - mac下docker如何设置代理7. html5 - 两个宽高一样的盒子重叠后旋转一定角度,为什么会看到下面的盒子8. html - angularJS中switch切换开关按钮不能操作9. 想看以前的课程怎么办,10. angular.js - angularjs移动端项目需要引入外部的PC网页,iframe宽高设定100%,显示的内容依然是PC那种效果,不是缩放成适配屏