javascript - 关于Juqery的Ajax错误返回,error方法中返回的参数与网上查到的不一样,详细看下面
阿神
阿神 2017-04-10 16:34:23
[JavaScript讨论组]

我在项目中写了一个Ajax请求,特别奇怪的是,用电脑测试时是没有问题的,当我用了公司的无线网,和我自己的手机流量时,页面就没有反应,于是我在Ajax中用了error方法来弹一些数据想看一下原因。可是返回的数据,让我很迷惑,Ajax代码大概如下:

$.ajax({
    url: '//请求地址',
    data: {
        mob: 703
    },
    dataType: 'jsonp',//对了我是跨域请求,再强调一下电脑是没有问题,这个错误就发生在我用手机时的几个特定网络
    method: 'get',
    error: function(XMLHttpRequest, textStatus, errorThrown){
          alert('XMLHttpRequest.status: '+ XMLHttpRequest.status);
          alert('XMLHttpRequest.readyState: '+ XMLHttpRequest.readyState);
          alert('textStatus: '+ textStatus);
          alert('errorThrown: '+errorThrown);
     },
     success: function(){}
});

以上就是我大概Ajax的部分,我想我写的够清楚了。我再说一下手机上显示的内容吧。

XMLHttpRequest.status: undefined
XMLHttpRequest.readyState: undefined
//好像就没取到XMLHttpRequest一样
textStatus: error//网上查了好久也没查到error代表什么,大概的错误原因啥的
errorThrown: null

大概的情况就如上所述,还希望大神能帮忙解释一下,我在不停的找原因,快疯了。谢谢啦。

阿神
阿神

闭关修行中......

全部回复(1)
怪我咯

在跨域方式下error回调是不会触发的,既然你的代码触发了error回调,说明你没有正确使用跨域。

以下内容摘自Jquery官方文档:

This handler is not called for cross-domain script and cross-domain JSONP requests. 
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号