亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解Ajax跨域(jsonp) 調(diào)用JAVA后臺

 更新時間:2017年05月27日 09:30:51   作者:微笑陽光哈*_*  
本篇文章主要介紹了詳解Ajax跨域(jsonp) 調(diào)用JAVA后臺 ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1. JSONP定義

JSONP是英文JSON with Padding的縮寫,是一個非官方的協(xié)議。它允許在服務(wù)器端生成script tags返回至客戶端,通過javascript callback的形式來實現(xiàn)站點訪問。 JSONP是一種script tag的注入,將server返回的response添加到頁面實現(xiàn)特定功能。

2.JSONP由來

要解釋JSONP的來由,先要說一下瀏覽器的“同源策略(SOP:Same Origin Policy)”。 簡而言之,就是瀏覽器限制腳本程序只能和同協(xié)議、同域名、同端口的腳本進(jìn)行交互,這包括共享和傳遞變量等。cookie的傳遞也是遵從同樣策略。這就造成一些涉及到多個服務(wù)器的應(yīng)用在整合時一些麻煩??缬蛟L問的問題造成A站點的Ajax代碼無法訪問B站點的數(shù)據(jù)。

如何解決跨域訪問呢?那就要借助瀏覽器的一個特性:盡管瀏覽器不允許頁面中的腳本程序跨域讀取數(shù)據(jù),但卻允許HTML引用跨域的資源,如圖片,CSS和腳本程序。對于腳本程序的引用比較特殊,它被瀏覽器解析以后,就和本地的腳本程序別無二致且可立即進(jìn)行解釋并執(zhí)行。如在B站點的一個js文件,一個簡單的提示框:alert(“This is Victor!”);。在A站點引用這個js,這個腳本就會在B站點的應(yīng)用中執(zhí)行,顯示一個alert信息。由于站外腳本的引用是通過script tag來實現(xiàn)的,而腳本程序又可通過DOM的方式可以對HTML頁面的所有標(biāo)簽進(jìn)行控制(包括動態(tài)的創(chuàng)建script標(biāo)簽),這就可以實現(xiàn)通過調(diào)用站外程序?qū)Ρ镜刭Y源進(jìn)行更改了。另外,通過<script> 標(biāo)記的使用,就可從服務(wù)端直接返回可執(zhí)行的JavaScript函數(shù)調(diào)用或者JSON數(shù)據(jù)。

3. JSONP原理與實現(xiàn)

首先在客戶端注冊一個callback, 然后把callback的名字傳給服務(wù)器。此時,服務(wù)器先生成 JSON數(shù)據(jù)。然后以JavaScript 語法的方式,生成一個function, function名字就是傳遞上來的參數(shù)jsonp. 

然后,將JSON數(shù)據(jù)直接以入?yún)⒌姆绞剑胖玫絝unction中,這樣就生成了一段 js 語法的文檔,返回給客戶端。

最后,在客戶端瀏覽器中解析script標(biāo)簽,并執(zhí)行返回的JavaScript文檔,此時數(shù)據(jù)作為參數(shù),傳入到了客戶端預(yù)先定義好的回調(diào)函數(shù)里(動態(tài)執(zhí)行回調(diào)函數(shù)) 。

具體代碼操作:

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'}";

  //加上返回參數(shù)

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

  return result;

} 

如上:前端調(diào)用結(jié)果彈出:alert('true')  

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Ajax實現(xiàn)動態(tài)加載數(shù)據(jù)

    Ajax實現(xiàn)動態(tài)加載數(shù)據(jù)

    這篇文章主要為大家詳細(xì)介紹了Ajax動態(tài)加載數(shù)據(jù)的小例子,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • ajax接口文檔url路徑的簡寫實例

    ajax接口文檔url路徑的簡寫實例

    前端工程師將來打交道最多的是Http API接口,此種接口會提供一個URL地址暴露在互聯(lián)網(wǎng)上,可以通過編寫Ajax代碼去與之交互來完成功能,下面這篇文章主要給大家介紹了關(guān)于ajax接口文檔url路徑簡寫的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • ajax實現(xiàn)excel報表導(dǎo)出

    ajax實現(xiàn)excel報表導(dǎo)出

    這篇文章主要為大家詳細(xì)介紹了ajax實現(xiàn)excel報表導(dǎo)出,解決亂碼問題,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • Ajax 提交表單數(shù)據(jù)到入庫的全盤操作流程分享

    Ajax 提交表單數(shù)據(jù)到入庫的全盤操作流程分享

    以下是Ajax 提交表單數(shù)據(jù)到入庫的全盤操作流程,希望本文對廣大php開發(fā)者有所幫助,感謝閱讀本文
    2014-01-01
  • js+ajax處理java后臺返回的json對象循環(huán)創(chuàng)建到表格的方法

    js+ajax處理java后臺返回的json對象循環(huán)創(chuàng)建到表格的方法

    這篇文章主要介紹了js+ajax處理java后臺返回的json對象循環(huán)創(chuàng)建到表格的方法,涉及javascript操作json對象動態(tài)創(chuàng)建表格以及基于ajax與后臺交互的相關(guān)技巧,需要的朋友可以參考下
    2016-08-08
  • AJAX初級教程之初識AJAX

    AJAX初級教程之初識AJAX

    本文是ajax初級教程的第一篇,本系列教程將從實用的角度出發(fā),以最快的速度讓讀者掌握基本的AJAX應(yīng)用,以最直接的方式展示AJAX技術(shù)。本文則講解下AJAX的基礎(chǔ)知識
    2014-12-12
  • 登錄超時給出提示跳到登錄頁面(ajax、導(dǎo)入、導(dǎo)出)

    登錄超時給出提示跳到登錄頁面(ajax、導(dǎo)入、導(dǎo)出)

    這篇文章主要介紹了登錄超時給出提示跳到登錄頁面(ajax、導(dǎo)入、導(dǎo)出)的相關(guān)資料,需要的朋友可以參考下
    2016-02-02
  • Ajax 框架之SSM整合框架實現(xiàn)ajax校驗

    Ajax 框架之SSM整合框架實現(xiàn)ajax校驗

    這篇文章主要介紹了Ajax 框架之SSM整合框架實現(xiàn)ajax校驗,需要的朋友可以參考下
    2017-04-04
  • 多ajax請求的各類解決方案(同步, 隊列, cancel請求)

    多ajax請求的各類解決方案(同步, 隊列, cancel請求)

    ajax帶來很好的用戶體驗,于是一個稍微注重web系統(tǒng)使用ajax基本成為必然。當(dāng)傳統(tǒng)功能型web項目向用戶體驗型項目轉(zhuǎn)變時,層出不窮的需求就來了。正如本篇所介紹的就是一個多個AJAX請求的情況下,如何利用jquery來處理幾種case
    2012-03-03
  • Ajax回退刷新頁面問題的解決辦法

    Ajax回退刷新頁面問題的解決辦法

    這篇文章主要介紹了Ajax回退刷新頁面問題的解決辦法的相關(guān)資料,非常不錯,具有參考借鑒價值,感興趣的朋友一起學(xué)習(xí)吧
    2016-07-07

最新評論