ionic无法加载网页但出现错误:无法连接到服务器

时间:2014-10-11 11:12:39

标签: xcode cordova ios8 ionic-framework

我在更新到Xcode 6和iOS 8后遇到了Ionic项目的问题。

尝试运行项目时,我在Xcode中收到以下错误:

Failed to load webpage with error: Could not connect to the server.

完整的日志是:

2014-10-11 14:08:29.468 test[23293:109668] Apache Cordova native platform version 3.6.3 is starting.
2014-10-11 14:08:29.469 test[23293:109668] Multi-tasking -> Device: YES, App: YES
2014-10-11 14:08:29.495 test[23293:109668] Unlimited access to network resources
2014-10-11 14:08:29.866 test[23293:109668] [CDVTimer][keyboard] 0.079989ms
2014-10-11 14:08:29.866 test[23293:109668] [CDVTimer][TotalPluginStartup] 0.284970ms
2014-10-11 14:08:30.721 test[23293:109668] Resetting plugins due to page load.
2014-10-11 14:08:30.764 test[23293:109668] Failed to load webpage with error: Could not connect to the server.

即使在尝试更新Ionic和Cordova并启动新项目时,此错误仍会突然出现。

我无法找到任何包含此特定错误的主题,而且我不确定这是否是iOS 8兼容性问题,或者是我的设置搞砸了。

谢谢!

编辑:

关于index.html和app.js

中的内容的更多信息

的index.html:

<!DOCTYPE html>
<html ng-app="app" ng-controller="AppCtrl">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">

    <!-- compiled CSS -->
    <link rel="stylesheet" type="text/css" href="assets/app-0.0.1.css" />

    <!-- compiled JavaScript -->
    <script type="text/javascript" src="src/app/app.js"></script>

    <!-- cordova script (this will be a 404 during development) -->
    <script src="cordova.js"></script>
  </head>
  <body >
    <ion-nav-view></ion-nav-view>


    <!-- Load deferred scripts -->

    <!-- Google Maps -->
    <script src='http://maps.googleapis.com/maps/api/js?sensor=true&callback=googleMapsLoaded' defer async></script>
  </body>
</html>

和app.js(在使用ngbp编译其余文件之前):

angular.module( 'app', [
  'ionic',

  // Common requirements
  'templates-app',
  'templates-common',

  // Common Components
  'app.auth',

  // All page modules
  'app.businesses',
  'app.business',
  'app.search',
  'app.branch',
  'app.profile',
  'app.feed',

  // Other dependencies
  'ui.router'
])

.config(['$stateProvider', '$urlRouterProvider', function myAppConfig ($stateProvider, $urlRouterProvider) {
  $stateProvider
  .state('app', {
    url: "/app",
    abstract: true,
    templateUrl: "menu/menu.tpl.html",
    controller: 'AppCtrl'
  });

  $urlRouterProvider.otherwise( 'app/feed' );
}])

.run(['$ionicPlatform', 'appAuthService', '$sessionStorage', function($ionicPlatform, appAuthService, $sessionStorage) {
  // Initialize ionic styles
  $ionicPlatform.ready(function() {
    if(window.StatusBar) {
      // org.apache.cordova.statusbar required
      StatusBar.styleDefault();
      StatusBar.styleLightContent();
    }
  });

  // Initialize app authentication service
  appAuthService.init();

  // Initialize a session cache validation object
  $sessionStorage.updated = {};
}])

.controller( 'AppCtrl', ['$scope', '$location', function AppCtrl ($scope, $location) {

}])

;

7 个答案:

答案 0 :(得分:83)

我遇到了同样的问题。

我通过Xcode在平台文件夹中打开了ios项目,但是我忘记了Xcode文件夹中的代码库不是最新的,因此被破坏了。

要在Xcode项目中获取新代码,请使用以下命令:

ionic cordova prepare ios

如果您的问题与我的问题根源相同,这应该会有所帮助。

答案 1 :(得分:1)

我使用XCode9.3和ionic3也有同样的问题。事实证明,该问题是由于WKWebview正常运行所需的“config.xml”中缺少配置引起的。我在删除“platforms / ios”文件夹并再次运行“ionic cordova build ios --prod”之前,将以下代码段添加到我的config.xml中。

 <allow-navigation href="http://localhost:8080/*" />
    <feature name="CDVWKWebViewEngine">
        <param name="ios-package" value="CDVWKWebViewEngine" />
    </feature>
    <preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />

有关离子团队的详细说明,请参阅link here

答案 2 :(得分:1)

我已经运行了服务器和模拟器,并再次尝试更新设备上的应用程序。

然后我遇到了同样的问题

我停止了模拟器并重新构建了应用程序,并使用Xcode打开了project.xcodeproj文件并在设备上运行它。

答案 3 :(得分:0)

当我尝试在iOS设备上运行Ionic 4应用程序时遇到了这个问题。

为我解决的是使用--address选项在所有网络接口上运行开发服务器,例如:

ionic cordova run ios --address=0.0.0.0 --debug --consolelogs -l

答案 4 :(得分:0)

我遇到了同样的问题,重新安装 cordova-plugin-ionic-webview 对我有用。

cordova plugin rm cordova-plugin-ionic-webview
cordova plugin add cordova-plugin-ionic-webview

答案 5 :(得分:0)

在我们的案例中(根据IONIC 5),条目

combination(arr, 2, 0, new String[2])
                .stream()
                .map(a->String.join(" -> ", a))
                .forEach(out::print);
必须删除文件“ capacitor.config.json”中的

。 之后,该应用在移动设备上顺利运行。

答案 6 :(得分:-1)

我找到了解决方案,希望对您有所帮助: https://github.com/glebmachine/cordova-plugin-ionic/commit/7c095a45a13f7349e93f14a3057153775109f635

要从我的叉子安装: cordova plugin add https://github.com/glebmachine/cordova-plugin-ionic.git#v4