0

私は ajax リクエストを多用し、デスクトップ ブラウザ内で適切に動作する Web シングル ページ アプリに取り組んでいます。しかし、XCode の cordova ラッパー内に配置し、エミュレーターまたは iPhone で再度実行すると、何らかの理由で、http://myhost:3000/api/login私が見るような要求ではなくfile:///api/login、明らかに失敗します。その理由は何ですか?

4

1 に答える 1

0

PhoneGap アプリケーションはfile:ページ上で実行され、リクエストはおそらく絶対パス に対するものである/api/loginため、絶対パスは に解決されfile:///api/loginます。

あなたのコードhttp://myhost:3000は、絶対パスがhttp://myhost:3000/api/login.

PhoneGap 内のホストにリクエストを送信する場合は、パスにホストを明示的に指定する必要があります。ホストへの Ajax アクセスを許可するには、明示的にホワイトリストに登録する必要がある場合があります。

于 2013-06-06T16:12:29.440 に答える