web-dev-qa-db-ja.com

IonicリクエストはAndroidでのみ404を返します。Chrome正常に動作します

そのため、私はionicからチュートリアルアプリリポジトリのクローンを作成しました。走った

ionic start conference sidemenu

そして、単純な$ http.get( 'myserver')を追加しました(ngResourcesでも試しました)。

クロムでは完璧に機能し、すべてのデータを取り戻しましたが、angularでは、試行したすべてのリクエストでnullデータと404ステータスしか得られませんでした。

注:ホストサーバーとローカルサーバーで試しました。両方ともAndroidで失敗します。サーバーはnode.js REST APIです。

コンソールには何も印刷されないため、リクエストはサーバーに到達することすらありません。

Ionicで構築されたAndroidアプリをデバッグする方法はありますか?

編集1:なぜあなたはそれが必要なのかわかりませんが、ここにあります

$http.get('http://server.com/route').success(function (data) {
            //handle success
        }).error(function (data, status) {
            // handle error
        });
41
Victor Balan

問題は、Cordova 4.0.0にいくつかの大きな変更があったことです。

主な変更点[...]-ホワイトリスト機能がプラグインを介して提供されるようになりました(CB-7747)ホワイトリストが強化され、より安全で設定可能になりました。 )新しいcordova-plugin-whitelistプラグインを追加する必要があります。レガシーホワイトリストの動作は、プラグインを介して引き続き使用できます(ただし、推奨されません)。

そこで、私は Cordova Whitelistプラグイン をインストールしました。そして追加

<allow-navigation href="http://*/*" />

私のconfig.xmlファイル。

89
Victor Balan

私の場合、問題はcordova-plugin-whitelistプラグイン。プラグインを削除して追加しました。また、このコードを追加することにより、リクエストを有効にしました<access Origin="*" /> in config.xml。以下のコマンドを見つけてください:

以下のコマンドを使用して、既存のプラグインを削除する必要があります。

ionic cordova plugin rm cordova-plugin-whitelist

次に、以下のコマンドを使用して追加します。

ionic cordova plugin add cordova-plugin-whitelist

それが役に立てば幸い。

3
Sandy

コルドバコンパイルがwwwフォルダーである場合、ローカルコンテンツは、apkまたは同等のiOSを実装するためのアセットおよびその他のフォルダーです

すなわち

<img src="assets/images/{your-file-name}">
0
Ivan Fretes