JAVAのバックグラウンドを呼び出します。


1.JSONP定義
JSONPは英語JSON with Paddingの略語で、非公式の契約です。これは、サーバ端でscript tagsを生成してクライアントに戻り、javascript calbackの形でサイトアクセスを実現することができます。JSONPはScriptの注入で、serverが返したレスポンスをページに追加して特定機能を実現します。
2.JSONP由来
JSONPの由来を説明するには、まずブラウザの「同ソースポリシー(SOP:Same Origin Policy)」について説明します。簡単に言えば、ブラウザ制限スクリプトプログラムは、共有や転送変数などを含む、同じプロトコル、ドメイン名、同じポートのスクリプトとしか対話できない。クッキーの転送も同様のポリシーに従います。これは、複数のサーバへのアプリケーションの統合に関わるいくつかのトラブルを引き起こします。ドメインをまたぐアクセスの問題で、AサイトのAjaxコードがBサイトのデータにアクセスできなくなりました。
クロスドメイン訪問はどう解決しますか?ブラウザの特性を借りる必要があります。ブラウザではページ内のスクリプトプログラムがドメインを越えてデータを読み込むことはできませんが、画像、CSS、スクリプトプログラムなどのドメイン間のリソースをHTMLに引用することができます。スクリプトプログラムの参照は特別です。ブラウザで解析されたら、ローカルのスクリプトプログラムと同じようにすぐに説明して実行できます。Bサイトのjsファイルのように、シンプルなヒントボックス:alert(「This is Victor!」);Aサイトでこのjsを引用すると、このスクリプトはBサイトのアプリケーションで実行され、alert情報が表示されます。局外スクリプトの引用はスクリプトによって実現されるので、シナリオプログラムはまたDOMによってHTMLページのすべてのラベルを制御することができます。これは、局外プログラムを呼び出してローカルリソースを変更することができます。また、「script」マークの使用により、実行可能なJavaScript関数の呼び出しまたはJSONデータがサービスから直接に返されます。
3.JSONPの原理と実現
まずクライアントにcalbackを登録して、calbackの名前をサーバーに伝えます。この時、サーバーさんはJSONデータになります。そしてJavaScript文法の方式で、一つのfunctionを生成します。functionの名前は伝達されたパラメータjsonです。 
その後、JSONデータを直接に入力して、functionに置いて、js文法の文書を作成して、クライアントに返します。
最後に、クライアントブラウザでscriptタグを解析し、リターンされたJavaScript文書を実行すると、データがパラメータとしてクライアントがあらかじめ定義しているコールバック関数に入力されます。
具体的なコード操作:
1,jsコード

$.ajax({

  url: 'http://192.168.3.49:8080/PORTAL/authCode',

  type: 'post',

  dataType:'jsonp',

  jsonp: "callback",

  data: {

    "type":'0',

    "mobilePhone": $("#tel").val()

  },

  success:function(data){

    alert(data.ret)

    settime(obj);

  },

  error:function(data){

    $('#mstr_ck').html("       ,   !");

    $("#error_ck").show();

  }

}); 
2,javaコード

@RequestMapping(value = "authCode")

@ResponseBody

public String getMobileAuthCode( HttpServletRequest request, String callback)

    throws Exception {

  String result = "{'ret':'true'}";

  //      

  result=callback+"("+result+")";

  return result;

} 
上記のように、フロントエンド呼び出しの結果、ポップアップ:alert('true')
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。