Запрос перекрестного происхождения в веб-приложении

В моем приложении для системы Tizen я делаю AJAX-запрос перекрестного происхождения, он хорошо работает в браузере Tizen, но когда я упаковываю его как веб-приложение, запрос перекрестного происхождения не может работать. Я проверял это как на эмуляторе, так и на реальном устройстве. Я также использую записи веб-журнала инспектора сетевого журнала, снимок экрана выглядит следующим образом:

Может ли какой-нибудь эксперт сказать мне, почему?

Вот мой код:

var url = "";//this is assigned a domain which supports cross domain access according to HTML5 specification.
var client = new XMLHttpRequest();
client.open("GET", url, true);
client.setRequestHeader("Accept-Language", 'en-us');
client.onreadystatechange = function() { alert("succeed"); }
client.send();

1 ответ

Решение

Любой ресурс, к которому он доступен снаружи, должен быть объявлен (см. Доступ к ресурсам внешней сети):

По умолчанию доступ к внешним сетевым ресурсам невозможен (WARP: политика запросов доступа W3C). Таким образом, вы должны запросить разрешения для виджета для получения сетевых ресурсов. Вы можете ввести несколько URL-адресов, используя кнопку "Добавить" на вкладке "Доступ". Для каждого URL вы можете указать, хотите ли вы разрешить виджету доступ к поддоменам URL. Содержимое столбца "Разрешить субдомен" можно переключать щелчками мыши.

поэтому он не может работать без доступа к конкретному ресурсу, необходимому в нашем случае, определенном в config.xml:

<access origin="http://url_resource" subdomains="true"/>

или же

<access origin="*" subdomains="true"/>

чтобы все прошло.

Другие вопросы по тегам