私はこれについて決定的な答えを見つけることができないようですp-JSONPのは何の略ですか?私がこれまでに見つけた候補者はとpaddingですprints。JSONP名の由来を知っている人はいますか?
5 に答える
パディング。
http://en.wikipedia.org/wiki/JSONPから
JSONPまたは「JSONwithpadding」は、基本のJSONデータ形式を補完するものであり、ページが別のドメインのサーバーにデータを要求できるようにする使用パターンです。JSONPはこの問題の解決策であり、クロスオリジンリソースシェアリングと呼ばれる最近の方法に代わるものです。パディング
パディング(プレフィックス)は通常、ブラウザーの実行コンテキスト内で定義されるコールバック関数の名前ですが、変数の割り当て、ifステートメント、またはその他のJavascriptステートメントの場合もあります。JSONPリクエスト(つまり、JSONPの使用パターンに従ったリクエスト)への応答はJSONではなく、JSONとして解析されません。返されるペイロードは任意のJavaScript式にすることができ、JSONを含める必要はまったくありません。ただし、従来は、JSON形式のデータに対して関数呼び出しを呼び出すのはJavascriptフラグメントです。
言い換えると、JSONPの一般的な使用法では、JSONペイロードを関数呼び出しでラップすることにより、既存のJSONAPIへのクロスドメインアクセスを提供します。
お役に立てば幸いです。Googleが勝ちます!
結石、
私が知っていることは、「パディング」の略です。ウィキペディアにそれについての説明があります: JsonP
それは何をしますか?
CROSS-DOMAIN リクエストを作成し、JSON データを返すことができます。通常、HTMLスクリプト タグを介して、別の JavaScript を呼び出します。
しかし、JsonP はコールバック関数を提供し、通常の Json 応答を返すことができます。
例:
スクリプト タグを作成します。
<script type="text/javascript" scr="http://anotherDomain/Car?CarId=5&jsonp=GiveCarResponse"></script>
このスクリプトでは、GiveCarResponse が他のドメインのコールバック関数です。この関数を呼び出すと、Json 応答が返されます。例:
{"CarId":5, "Brand":"BMVV", "GAS": false}
これは理にかなっていますか?
ウィキペディアからは、「パディング」(またはパディング付き)の略です。
基本的には、JSONの周りに呼び出し関数を追加することを意味します。AJAXは独自のサーバーからのみ呼び出すことができ、クロスドメインではありません。したがって、クライアント側のさまざまなサーバーからデータをロードするには、JSONPリクエストを作成します。基本的には、通常のjavascriptファイルを含めるのと同じように、他のサーバーから通常のjavascriptファイルをロードします。JSONは有効なjavascriptファイルではないため、JSONは関数呼び出しにラップされて有効なjsファイルになります。ラップアップされた関数(すでにコードに含まれています)は、そのデータを抽出してページに表示します。