Android应用程序中的iFrame不允许任何网络请求

时间:2018-07-06 17:27:58

标签: android ajax angular ionic-framework iframe

详细信息:

  • 我为应用商店(iOS和 Android)并为网络构建。

  • 客户端正在其iframe中使用网络版本 应用程序(Android和iOS)。

  • Web版本在iOS和Android中正确显示。

问题:

  • 在我的应用的网络版本(来自客户端iFrame)中完成的所有网络请求都无法在仅Android设备中使用。在Charles中检查请求时,该请求根本不会显示。

  • 使用我的应用的网络版本,请求将按预期在iOS中通过。

我看过CSP元标记,但是它们都没有改变:

https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-whitelist/

Ionic-cant send http requests on device

我想念他们的任何明显之处吗?

这是网络版本的index.html文件:

<!DOCTYPE html>
<html lang="en" dir="ltr">

<head>
<script data-ionic="inject">
    (function(w){var i=w.Ionic=w.Ionic||{};i.version='3.9.2';i.angular='5.2.11';i.staticDir='build/';})(window);
</script>
    <meta charset="UTF-8">
    <title>TEST</title>
    <meta name="viewport" content="viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <meta name="format-detection" content="telephone=no">
    <meta name="msapplication-tap-highlight" content="no">
    <link rel="icon" type="image/x-icon" href="assets/icon/favicon.ico">
    <link rel="manifest" href="manifest.json">
    <meta name="theme-color" content="#4e8ef7">
    <!-- add to homescreen for ios -->
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta http-equiv="Content-Security-Policy" content="default-src *;">
    <!-- cordova.js required for cordova apps -->
    <script src="cordova.js"></script>
    <!-- un-comment this code to enable service worker -->
    <script>
        if ( 'location' in window ) {
            if ( window.location.protocol === 'http:' ) {
                window.location.protocol = 'https:';
            }
        }
        if ( 'serviceWorker' in navigator ) {
            navigator.serviceWorker.register( 'service-worker.js' )
                .then( () => console.log( 'service worker installed' ) )
                .catch( err => console.error( 'Error', err ) );
        }
    </script>

    <link href="build/main.css" rel="stylesheet">

</head>

<body>


    <!-- Ionic's root component and where the app will load -->
    <ion-app></ion-app>

    <!-- The polyfills js is generated during the build process -->
    <script src="build/polyfills.js"></script>

    <!-- The vendor js is generated during the build process
    It contains all of the dependencies in node_modules -->
    <script src="build/vendor.js"></script>

    <!-- The main bundle js is generated during the build process -->
    <script src="build/main.js"></script>


</body>

</html> 

0 个答案:

没有答案