Я обновляю некоторые проекты из старых версий Кордовы 2.x и 3.x до последней версии 5.1. Я вынужден сделать это, потому что в мае Google Play возьмет заложники pre-4.1.1 Cordova Apps (никаких новых представлений и обновлений для существующих приложений).Кордова 5: блокировка белых списков ajax вызывает
Унаследованные проекты, которые я обновляю, имели все URL-адреса, разрешенные в белом списке. Страница, загружаемая в WebView, включена в активы apk, но для операции важно сделать ajax-вызовы для URL-адресов удаленных ресурсов. Эти ресурсы были опубликованы компаниями-клиентами во всех видах доменов, и поскольку тысячи из них были безналичными, они были непрактичными.
Теперь с Cordova> 4 вам нужно скачать whitelist plugin, нравится вам это или нет. В новом файле config.xml у меня есть:
<allow-navigation href="*" />
<allow-intent href="*" />
<access origin="*" />
Но это не кажется достаточно. В logcat есть некоторые предупреждения о необходимости изменить мой HTML, чтобы включить Content Security Policy.
Поэтому я добавил это к моей странице:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
А теперь у меня есть проблема, потому что унаследованные приложения совместимы с Jellybean устройств, но белый список особенность плагина СНТ поддерживается только в устройствах KitKat.
Тем не менее, я тестировал обновленные приложения на устройстве Lollipop, а вызовы ajax продолжают блокироваться.
Есть ли способ перечислить все возможные домены без использования CSP, чтобы я мог запускать свои приложения в JellyBean?
Если нет, то какая была бы наименее ограничительная полиция безопасности контента? Видимо, подстановочный знак не работает.
Спасибо, я попробую, когда у меня будет время. –