ホームページ > 記事 > ウェブフロントエンド > ajaxとjsonpのクロスドメインの詳しい解説(コード付き)
今回は、ajax と jsonp のクロスドメインについて詳しく説明します (コード付き)。ajax と jsonp のクロスドメインを実装する際の 注意事項 について、実際のケースを見てみましょう。
クロスドメインの問題が発生するのはなぜですか? - 同一オリジンポリシーがあるため
同一オリジンポリシーとは、ブラウザのセキュリティポリシーであり、リクエストURLアドレス内のプロトコルが同じであることを指します。どちらかが異なる限り、それはクロスドメインです同一生成元ポリシーは主にブラウザーのセキュリティを確保するためのものです同一生成元ポリシーでは、ブラウザーは Ajax がサーバー データを取得することを許可しません。ドメインhttp://www.example.com/detail.htmlクロスドメインリクエスト:
基本的な概念ajax の概念 この概念を理解するには、まず同期対話と非同期対話について理解する必要があります
対話の原則
Ajax の詳細 アプリケーション シナリオ
にも使用できます。たとえば、ページが非常に大きく、一度にすべてをロードすることができない場合。 、ローリングロードを実装します
XMLHttpRequest インタラクションの 4 つのステップ 1. XMLHttpRequest オブジェクトをインスタンス化します
2. サーバーと対話したい場合は、サーバーとの接続を開く必要があります
3サーバーにデータを送信し、パラメーター データをサーバーに送信します。 サーバーから返されたデータを受け入れます。 クライアントに返されるときに、一部のステータスが返されます。サーバーステータス
ajaxクロスドメイン
クロスドメイン: サイトにアクセスすると、バックグラウンドでAページが返され、このページのサイトBのリソースにアクセスしたいとします。サイト a. これはクロスドメインの影響です。クロスドメイン ブラウザにはセキュリティ制限があります。 ソリューション・クロスドメインメソッド: jsonpメソッド JSONP、正式名はJSON with Paddingで、クロスドメインリクエストリソースを解決するためのJSON形式に基づくソリューションです。その実装の基本原理は、HTML の <script></script> 要素タグを使用して JSON ファイルをリモートで呼び出し、データ転送を実現することです。 a.com ドメイン下の b.com に存在する JSON データ (getUsers.JSON) を取得したい場合: クロスドメインを解決する jsonp の基本原則: ブラウザーの同一オリジン制限により、異なるサイトは取得できません。相互にアクセスしますが、他のサイトからデータを取得したい場合があります。たとえば、簡単なデータを取得したい場所に 天気予報 データを追加するなどです。これはクロスドメインでなければなりません。どうすればよいでしょうか。 原則: