ホームページ > 記事 > ウェブフロントエンド > jsonとjsonpの使い方のまとめ
今回は、json と jsonp の使用方法についてまとめました。json と jsonp を使用する際の 注意事項 は何ですか?実際の事例を見てみましょう。
json
1. json の値は次のタイプになります:
① 123、1.23 などの数値 (整数または浮動小数点数)②文字列 (二重引用符で囲む)
③ 論理値 (true または false) ④ 配列 (角括弧内) ⑤ オブジェクト (中括弧内) ⑥ null2. json 解析メソッド
① eval('(' + jsondata + ')' ); コードインジェクションは常に安全ではありません② JSON.parse(jsondata);JSONLint json: 文字列検証ツール3. jQuery は ajax
jQuery を実装します。設定])type: タイプ url: リクエストを送信するアドレス data: リクエストとともにサーバーに送信されるデータとともにオブジェクトです dataType: 返されることが期待されるデータタイプ 指定されていない場合、jQuery は HTTP パッケージの MIME 情報に基づいて自動的に判断します。通常は、「json」に設定できるメソッドです。リクエストが成功すると、返されたデータで コールバック関数
が渡され、成功コードerror: を含む文字列がメソッドであり、この関数はリクエストが失敗したときに呼び出されます。 XMLHttpRequest オブジェクトを渡します
jsonpクロスドメイン
ドメイン名アドレスの構成:
http://www .abc.com :8080/scripts/jquery.jsプロトコル:// サブドメイン名、メインドメイン名: ポート番号/要求リソースアドレスプロトコル、サブドメイン名、メインドメイン名、ポート番号のいずれかを同時に使用できない場合は、すべて異なるものとしてカウントされます。ドメイン異なるドメイン間で相互にリソースを要求することは、「クロスドメイン」ドメインとみなされますjavascript
セキュリティ上の理由から、他のページ上のオブジェクトへのクロスドメイン呼び出しは許可されていません。クロスドメイン処理方式:
——プロキシ(バックグラウンド技術に属する) 例えば、北京のWebサーバーのバックグラウンドで、上海サーバーのサービスを呼び出し、確認してその応答結果をフロントエンドに返すと、フロントエンドは、北京でも同じドメイン名を使用し、上海でサービスを呼び出すのと同じ効果があります。
—— JSONPa 宣言するドメイン名、b 呼び出すドメイン名注: JSONP は GET リクエストにのみ使用でき、POST リクエスト
(制限事項) をサポートしません—— XHR2 によって提供される XMLHttpRequest Level2
HTML5 クロスドメイン アクセスとその他の新機能が実装されました IE10 より前のバージョンはサポートされていませんサーバー側でいくつかの小さな変更を加えるだけです:header("Access-Control-Allow-Origin:") ;は、すべてのサーバーにアクセスできること、または特定のドメイン名に置き換えることができることを意味します。たとえば、サーバーは上海にあり、* は北京のサーバーのドメイン名に置き換えられ、北京のドメイン名のみにアクセスできるようになります。header("Access-Control-Allow-Methods:POST,GET");
jsonp の長所と短所について話しましょう。
同一生成元ポリシー: JavaScript は、それを含むドキュメントと同じドメイン内のコンテンツにのみアクセスできます。 jsonp は同一オリジン ポリシーにまたがることができます。jsonp を使用すると、通信用の別のプロトコルになります。 JSONP の利点は次のとおりです。XMLHttpRequest オブジェクトによって実装される Ajax リクエストのような同一生成元ポリシーによって制限されず、互換性が高く、XMLHttpRequest や ActiveX のサポートなしで古いブラウザーでも実行できます。 、コールバックを呼び出すことで結果を返すことができます。 JSONP の欠点は、GET リクエストのみをサポートし、POST などの他のタイプの HTTP リクエストはサポートしないこと、クロスドメイン HTTP リクエストのみをサポートし、異なるドメインの 2 つのページ間で JavaScript 呼び出しを行う方法を解決できないことです。 この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。 推奨読書:
以上がjsonとjsonpの使い方のまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。