跨源AJAX请求 - XMLHttpRequest异常101

时间:2016-02-01 14:38:41

标签: javascript jquery ajax cordova cross-domain

我的Cordova应用(Cordova 6.0.0)包含access origin *HTTP API(通过POST发送数据),header Access-Control-Allow-Origin设置为*。 API正在域https://api.stude.cz上运行,因此您可以检查它(是的,我正在从应用程序调用https)。好吧,当我尝试从应用程序使用jQuery同步AJAX调用api时,我正在

{
    "readyState":0,
    "status":0,
    "statusText":"Error: NETWORK_ERR: XMLHttpRequest Exception 101"
}

这是JSON字符串化,因为Android Studio不支持在控制台中显示数组。你知道为什么吗?我花了很多时间......

我的要求:

function apiRequest(type, action, params) {
    var returnValue = false;
    console.log('started');
    $.ajax({
        url: 'https://api.stude.cz/' + type + '/' + action,
        type: 'post',
        async: false,
        crossDomain: true,
        data: params,
        success: function(data){
            returnValue = data;
        },
        error: function(data){
            console.log(JSON.stringify(data));
            returnValue = JSON.stringify({status:"error"});
        }
    });
    return(returnValue);
}

我测试过:

type = user
action = login
params = {email: -some email-, password: -some password-}

1 个答案:

答案 0 :(得分:0)

我通过删除和添加Android平台解决了这个问题。

cordova platform rm android
cordova platform add android

我认为这个问题出现在插件白名单或类似内容中,但感谢您的帮助!