2016-06-13 12 views
1

人!Ionic Appのjavascriptでエラーが発生しました:要求されたリソースに 'Access-Control-Allow-Origin'ヘッダーがありません

Ionicのjavascriptに問題があります。別のサイトにリクエストしようとしていますが、次のエラーメッセージが表示されます。

XMLHttpRequestはhttps://svcs.sandbox.paypal.com/AdaptivePayments/Payをロードできません。プリフライト要求への応答がアクセス制御チェックを通過しない:要求されたリソースに「アクセス制御許可」がない。 Origin 'http://localhost:8100'はアクセスできません。

My Ionic Appにはすでにプラグインホワイトリストがインストールされており、最新のconfig.xmlファイルですべての場所のナビゲーションとアクセスが許可されています。私もセキュリティを無効にしてクロムを実行しようとしましたが、どちらもうまくいきませんでした。

助けてもらえますか?他に何をするか分からない。

答えて

1

デフォルトでは、XMLHttpRequestsは同じドメイン要求(つまり、localhostとlocalhostの間のリクエストまたはpaypal.comとpaypal.comの間のリクエスト)に制限されています。

最新のブラウザでは、クロスサイトXMLHttpRequests(localhostからpaypal.comなど)はデフォルトでセキュリティ機能として無効になっています。このセキュリティ機能をバイパスするには、宛先サーバーがクロスサイト要求を明示的に許可する必要があります。これは、のブラウザを語っている

Access-Control-Allow-Origin: * 

:サーバーは、次のヘッダーに戻って返信するとき、たとえば、値として*または特定のドメインで「アクセス制御 - 許可 - 起源」と呼ばれるヘッダを送り返すことで行われどのようなドメインからにXMLHttpRequestを受け入れていますか?

あなたのケースでは、クロスサイトリクエストを許可しないhttps:// svcs.sandbox.paypal.com/AdaptivePayments/Payでリクエストしています(Access-Control-Allow-Originはありません)。 present)、ブラウザはXMLHttpRequestの通過をブロックしています。

0

https://ngrok.com/,https://localtunnel.me/のようなトンネルホストを使用する場合を除き、http://localhost:8100(LOCALHOST)をスクリプトとの通信を必要とするpaypalサービス/ apiにテストすることはできません。あなたのローカルホストで実行されるスクリプトは、World Wide WebからPaypalに見えるようにアクセス可能でなければなりません。

関連する問題