我见过很多关于实施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 任何帮助将不胜感激
答案 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="*"/>