ホームページ >バックエンド開発 >PHPチュートリアル >jQuery と PHP はクロスオリジン リクエスト用の JSONP をどのように実装できますか?

jQuery と PHP はクロスオリジン リクエスト用の JSONP をどのように実装できますか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-09 02:51:17861ブラウズ

How Can jQuery and PHP Implement JSONP for Cross-Origin Requests?

jQuery と PHP を使用した JSONP: クロスオリジン リクエストの例

JSONP の概念を理解することは、特に実装しようとする場合に難しい場合があります。それをあなた自身のプロジェクトに組み込んでください。この記事では、jQuery、PHP、および JSONP を組み合わせた、シンプルかつ効果的な例を紹介します。このデモに従うことで、このメカニズムを使用してクロスオリジン リクエストを実行する方法を明確に理解できるようになります。

課題

次のようなシナリオを考えてみましょう。 1 つのドメイン (例: mywebsite.com) でホストされている Web ページと、別のドメイン (例: someotherserver.com)。同一オリジン ポリシーのため、従来の Ajax メソッドを使用してデータに直接アクセスすることはできません。

JSONP の登場: クロスオリジン ソリューション

JSONP はブラウザーがスクリプト タグに同一オリジン制限を課さないという事実を利用して、クロスオリジン リクエストを実行できるようにする手法です。基本的に、取得したいデータを関数呼び出しにラップし、スクリプト タグを使用してそれをロードできます。

jQuery $.getJSON メソッド

時jQuery を使用して JSONP リクエストを作成する場合は、$.getJSON() メソッドを利用できます。このメソッドは、JSONP を使用してクロスオリジン リクエストを自動的に検出し、処理します。

PHP サーバーサイド スクリプト

サーバー側では、 JSONP で予期される形式でデータを要求し、返します。 ?callback=? を使用します。パラメータを使用して、返されたデータをラップするために使用されるコールバック関数を指定します。

例のテスト

この例をテストするには、Web ページで jQuery を使用します。そしてサーバー上のPHP。 jQuery コードはサーバーに対して JSONP リクエストを作成し、サーバー側の PHP スクリプトはコールバック関数内にラップされたデータを返します。応答を受信すると、jQuery はコールバックを実行し、返されたデータを処理します。

以上がjQuery と PHP はクロスオリジン リクエスト用の JSONP をどのように実装できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。