IONIC CORS кошмар ... Подписанные APK по-прежнему нуждаются в «Access-Control-Allow-Origin» для запуска - PullRequest
0 голосов
/ 30 декабря 2018

Я написал приложение, используя Ionic.Во время отладки я использовал «Access-Control-Allow-Origin» на сервере.Источник: "http://localhost:8100",, и он работал нормально.

Затем я создал APK, подписал его и установил на устройстве. Оказывается, он не работает, поскольку источник устройства:"http://localhost:8080".

Проблема связана с https://blog.ionicframework.com/handling-cors-issues-in-ionic/

Запуск на устройстве Что происходит при запуске ионного запуска?

Ваши файлы для приложения будут скопированы на устройство (или симулятор).Приложение запускается, таким образом, запускает браузер на телефоне / симуляторе для запуска скопированных файлов, что-то вроде: file: //some/path/www/index.html. Ваш источник не будет существовать, так как вы выполняете файл: // URI;следовательно, любой внешний запрос не требует запроса CORS.

Таким образом, Access-Control-Allow-Origin даже не должен быть проблемой при запуске сборки выпускана реальном устройстве оно все еще проверяется.

Если я удалю Access-Control-Allow-Origin с сервера, я никогда не смогу подключиться к нему.

Кто-нибудь знает, что происходитВот?и что мне делать?

Любой совет высоко ценится.

искренне ваш

1 Ответ

0 голосов
/ 17 января 2019

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

Я реализовал IHttpModule на сервере.Он проверяет источник и генерирует заголовок во время выполнения, который разрешает этот источник.Теперь я мог напрямую подключаться к сайту, используя веб-браузер, эмулятор и мобильный телефон без необходимости менять источник на сервере.

...