(Были на нем в течение последних 6 часов) Я пытаюсь сделать телефонный пробел/приложение Cordova. Я не могу сделать Ajax-вызов через эмулятор Android (API ver 22, Android> 4.4). Вызов Ajax работает на рабочем столе Firefox, но не работает даже в браузере Chrome (с тем же исключением, что и в эмуляторе)
кордова --version 5.0.0
Код:
$.ajax({
url: serverUrl,
type: 'GET',
contentType: "application/json",
async: true,
dataType: 'jsonp',
callback: 'callback',
jsonpCallback: 'yourcallback',
crossDomain: true,
success: function (result) {
$("#message").html("location sent");
},
error: function (request, error) {
alert('Error ' + error);
}
});
Я вижу ошибку:
На удаленном отладчике Chrome:
Отказался от подключения кhttp://10.0.2.2/test/getLocation.php, потому что это нарушает следующую директиву Политики безопасности контента: msgstr "default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'". Обратите внимание, что 'connect-src' не был задан явно, поэтому 'default-src' используется как запасной вариант.
Я видел все виды настроек в блогах и сообщениях, но бесполезно. Положите сюда несколько обычных подозреваемых.
$.support.cors = true;
$.mobile.allowCrossDomainPages = true;
AppManifest имеет доступ к Интернету:
<uses-permission android:name="android.permission.INTERNET" />
Config.xml:
<access origin="*" /> (have tried all variation, with putting actual server name here like "http://10.0.2.2" ).