2016-10-24 3 views
0

Ionicフレームワークを使用してモバイルアプリを開発しています。私は(カスタムヘッダとPOST)$ HTTPを使用して、私は

イオンは、ブラウザ(クロム、Firefoxの、...)に

を提供しようとすると、私は、プリフライトリクエストに

応答を取得していますアクセス制御チェックを通過しません:要求されたリソースに「Access-Control-Allow-Origin」ヘッダーがありません。したがって、原点「ヌル」はアクセスが許可されません。応答にHTTPステータスコード405がありました。

エラーです。私はクロームでCORSプラグインを有効にして同じことをしようとすると、プリフライトのために私が取得しています

応答は無効なHTTPステータスコード405

エラーが発生しました。

しかし、すべてを作って何

イオンの実行を使用してアンドロイド

または

イオンの実行IOS

私は私の携帯(アンドロイド/ IOS)でそれをインストールするときに動作します私のブラウザは$ httpを制限し、なぜ私の携帯電話はそれを許可しますか? Webviewはブラウザと異なるのですか?詳細について

- ここに私を助けてください、コンソール、デバイス、スプラッシュスクリーン、ステータスバー、ホワイトリスト、キーボード

- 私は(デフォルト)コルドバのプラグインを使用しています。適切な理解がなければ、私は単にモバイルアプリを構築することはできません。前もって感謝します。

EDIT 1

私はカスタムヘッダー要求を処理するREST APIを使用しています。私は今のところAPIコードを変更することは許可されていません。なぜなら、それはネイティブアンドロイドアプリのために長い間実行されているからです。問題は私がIonicを使用しているときで、私の驚いたことにSamsung TabとIPad(livereloadモードなしで実行すると)で動作するときです。

私が知りたかったのは、ブラウザが制限して、モバイルデバイスが動作する原因は何ですか?

モバイルデバイスのWebViewには、ブラウザのようなセキュリティポリシーはありませんか?

+1

あなたはhttp://stackoverflow.com/questions/33660712/angularjs-これを見たことがありますpreflight-has-invalid-http-status-code-404 – Marko

答えて

1

なぜ私のモバイルアプリケーションはうまく動作しますが、ブラウザには表示されませんか?

私のIonicプロジェクトでcordova-plugin-whitelistを使用しています。アプリケーションWebviewをナビゲートするためのホワイトリストポリシーを実装しています。 check source

ブラウザを動作させるには、私のionic.config.jsonにproxyを定義します。しかし、これは単なる回避策です。プロダクションのために、サーバーに明示的にAPI呼び出しを許可するようにサーバーを設定する必要があります。check source

関連する問題