jquery - Phonegap3.0 $.ajax问题,无法调用跨域url

标签 jquery cordova

我正在使用 Phonegap3.0 android 版本。每当我在浏览器中运行该 url 时,我都会检查 url 进行身份验证。在我的移动应用程序中,它抛出 xhr.status“0”错误。

当我警告下面的代码时,它给出了错误。

var ajaxRequest = $.ajax({
                type: "GET",
                url: getEmployeeURL,
                dataType: "json",
                cache: false
            });
            ajaxRequest.done(function() {
                utils.hideLoading();
                alert("Authentication Success");
                //utils.navigate("#dashboardView");
            });

ajaxRequest.fail(function(xhr, textStatus, errorThrown) {
                alert("Authentication failed");
                alert(xhr.status);
                alert(textStatus);
                utils.hideLoading();
            });

上面的 .fail 方法将 status 抛出为“0”,将 textStatus 抛出为“error”。我不知道为什么这没有调用该网址。

找到下面的AndroidManifest.xml权限

 <uses-sdk android:minSdkVersion="13" android:targetSdkVersion="18" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />

我认为跨域与 $.ajax 有一些问题,但我设置了

<access origin="*" /> 

也在根config.xml和res/xml/config.xml中

最佳答案

尝试这样做:

在调用 AJAX 函数之前,您必须等待事件“deviceready”触发并添加 2 行代码:

document.addEventListener('deviceready', function () {
jQuery.support.cors = true;
$.mobile.allowCrossDomainPages = true;
Examplerequest();
}, false);

关于jquery - Phonegap3.0 $.ajax问题,无法调用跨域url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19108920/

相关文章:

php - 如果选择了所有子元素,则隐藏父元素

jquery - 使用 jQuery 格式化 json.net 日期

javascript - Cordova 和布伦特里 : PayPal login window is blank

javascript - 如果在 iOS 和 Android 上的 Web 应用程序中使用 FormData 发送,文件将转换为 [Object object] 字符串

android - keepRunning 设置为 false - 它在 Android 上的真正作用是什么?

javascript - Django:Ajax 没有从服务器响应接收数据

javascript - 如何从 d3js 折线获取数据?

javascript - 使用 sessionStorage 更新按钮文本

android - 如何使用 Cordova/Phonegap 构建现有的 Sencha touch 应用程序?

javascript - Phonegap 无法在 Android 模拟器上运行(未找到 index.html)