使用cordova白名单错误调用Ajax

时间:2016-06-02 10:57:13

标签: ajax cordova whitelist

我见过很多关于实施cordova白名单插件的帖子,但经过整整一周的测试后,我仍然没有发现我的错误。

此ajax调用会抛出这些警报:

xhr {“readystate”:0,“status”:0,“statustext”:“error”}。

状态“错误”

错误“”

$.ajax({
    url: 'http://www.example.com/my_file.php',
    data: {type: 'test', code: '11'},
    method: "GET",
    dataType: "json",
    timeout: 5000,
    success: function (data) {
        alert('done '+JSON.stringify(data));
    },
    error: function (xhr, status, error) {
            alert('xhr '+JSON.stringify(xhr));
            alert('status'+JSON.stringify(status));
            alert('error '+JSON.stringify(error));
    }
});

我使用新的cordova白名单实现更新了我的phonegap构建应用程序,并将其添加到元:

<meta http-equiv="Content-Security-Policy" content="default-src data: gap: https://ssl.gstatic.com 'unsafe-eval' *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' http://www.example.com; connect-src 'self' http://www.example.com">

这到config.xml:

<gap:plugin name="cordova-plugin-whitelist" source="npm"/>
<allow-navigation href="*" />
<allow-intent href="*" />
<access origin="*" />

这是在ajax调用之前的js中:

$.support.cors=true;

我现在正在使用所有通配符进行测试,我稍后会更改。这是我正在调用的服务器php文件:

<?php 

header("Access-Control-Allow-Origin: *");
header('Content-Type: application/json');

$data = json_encode(array($_GET));

echo $data;

?>

Phonegap构建版本cli-5.2.0 Android 4.1.1 任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

config.xml

中试试这个
<access origin="*"/>
<access origin="tel:*" launch-external="yes"/>
<allow-navigation href="*"/>
<allow-navigation href="http://*/*"/>
<allow-navigation href="https://*/*"/>
<allow-navigation href="data:*"/>
<allow-intent href="*"/>
<access origin="*"/>