クロスドメイン Ajax の問題: 「Access-Control-Allow-Origin によってオリジンが許可されていません」
クロスドメイン Ajax を作成する場合PhoneGap でラップされた Sencha Touch 2 のリクエストを実行すると、オリジンが許可されていないことを示すエラーが発生する場合があります。アクセス制御許可オリジン。この問題は、クロスサイト リクエスト フォージェリを防止するブラウザのセキュリティ メカニズムが原因で発生します。
解決策:
最も簡単な解決策は、次のようにサーバーからの応答を変更することです。 Access-Control-Allow-Origin ヘッダーを追加します。 PHP では、これは次のコードを使用して実行できます:
<?php header('Access-Control-Allow-Origin: *'); ?>
このヘッダー構成により、クロスドメイン Ajax リクエストが可能になります。
ただし、Access-Control- にはワイルドカード (*) を使用します。 Allow-Origin は、ユーザーをセキュリティ リスクにさらす可能性があります。したがって、次のようなより制限的な表現を使用して、特定のドメインをホワイトリストに登録することをお勧めします。
<?php header('Access-Control-Allow-Origin: http://example.com') ?>
あるいは、Apache 構成または htaccess ファイルで Access-Control-Allow-Origin ヘッダーを設定することもできます。
適切な応答ヘッダー設定を実装することで、「Access-Control-Allow-Origin によってオリジンが許可されていない」問題を解決できます。クロスドメイン Ajax 通信を有効にします。
以上がクロスドメイン AJAX リクエストの「Origin is not allowed by Access-Control-Allow-Origin」エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。