ионные http добраться до локального файла дает http код ошибки 0?

0

Я строю карту, используя листовки, картографию и всеядное. У меня есть.kml файл со списком маркеров на нем. Маркеры загружаются штрафом на рабочем столе с помощью ионного устройства, но не тогда, когда я фактически запускаю его на мобильном устройстве (я тестировал android/ios).

Я знаю, что всеядное загружает этот файл с помощью запроса xhr, поэтому я решил сам это проверить:

test = function() {
      $http.get('/kml/file.kml').success(function(data, status, headers, config) {
        alert('Success!: ' + status);
      })
        .error(function(data, status,headers,config) {
          alert('FAILURE!: ' + status);
        });
    }

Я получаю 200 успехов на рабочем столе, но когда я запускаю его на мобильном устройстве с использованием ионного представления или создаю его для Android, я получаю сбой с кодом ошибки 0.

Я не уверен, почему это происходит на мобильных устройствах, у меня есть <access origin="*"/> в моем config.xml.

Любая помощь будет оценена, спасибо!

Теги:
ionic-framework
http
cordova

2 ответа

1

Не знаете, какая версия Angular вы используете, но $http.success и $http.error устарели (начиная с v.1.4.4, я думаю) и были заменены успехами и функциями обратного вызова ошибок

$http.get('/kml/file.kml').then(
  function successCallback(response) {
     console.log(response);
  }, function errorCallback(error) {
     console.log(error);
});

Не уверен, что это ваша проблема, но попробуйте обновить свой угловой и/или изменить свой код и посмотреть, не имеет значения.

  • 0
    Спасибо за совет, я не знал, что успех / ошибка обесценились. Я разместил свое решение выше, спасибо, что нашли время, чтобы ответить на мой вопрос.
0

Ну, я понял решение. У меня была ведущая косая черта в файле, который читался правильно, когда ионная подача помещала сайт в качестве сервера, но при использовании на мобильном устройстве ionic запускает приложение, используя протокол file://и ведущую косую черту вызывает конфликты.

TL;DR; удалил ведущую косую черту, все хорошо.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню