最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

通過jsonp獲取json數(shù)據(jù)實現(xiàn)AJAX跨域請求

 更新時間:2017年01月22日 15:33:34   作者:readyGo  
JSON 可通過 JavaScript 進行解析,JSON 數(shù)據(jù)可使用 AJAX 進行傳輸,這篇文章主要介紹了通過jsonp獲取json數(shù)據(jù)(實現(xiàn)AJAX跨域請求),有興趣的可以了解一下。

AJAX(異步的 JavaScript 和 XML)是用于創(chuàng)建快速動態(tài)網(wǎng)頁的一種技術(shù),它在不重新加載整個頁面的情況下,與服務(wù)器交換數(shù)據(jù)并更新部分網(wǎng)頁,ajax 使用XMLHttpRequest對象在后臺與服務(wù)器交換數(shù)據(jù),XMLHttpRequest 是 AJAX 的基礎(chǔ),它允許客戶端 JavaScript 通過 HTTP請求連接到遠程服務(wù)器。

但是,由于受到瀏覽器的限制,這種方法不可以進行跨域訪問,如果使用這種方法進行跨域訪問則會出現(xiàn)安全問題。不過,我們可以發(fā)現(xiàn),在web頁面跨域調(diào)用 js文件時,不會受到瀏覽器的限制,所以我們可以利用將遠程服務(wù)器端的數(shù)據(jù)裝入js格式的文件,然后再用來供客戶端進行調(diào)用。

JSON(JavaScript 對象表示法)是一種輕量級的文本數(shù)據(jù)交換格式,它具有自我描述性,易于理解。JSON 可通過 JavaScript 進行解析,JSON 數(shù)據(jù)可使用 AJAX 進行傳輸。

JSON實例:

{
 "employees": [
 { "firstName":"Bill" , "lastName":"Gates" },
 { "firstName":"George" , "lastName":"Bush" },
 { "firstName":"Thomas" , "lastName":"Carter" }
 ]
 }

JSON 語法是 JavaScript 對象表示法語法的子集:

數(shù)據(jù)在名稱/值對中, 數(shù)據(jù)由逗號分隔 ,花括號保存對象, 方括號保存數(shù)組。

JSON的特性

  • 純文本,易于跨平臺傳遞
  • Javascript原生支持,后臺語言幾乎全部支持
  • 使用輕量級的文本數(shù)據(jù)交換格式,適合在互聯(lián)網(wǎng)中傳遞
  • 比 XML 更小、更快,更易解析。

基于JSON的這些特性,可以通過使服務(wù)器動態(tài)生成JSON文件,然后將客戶端需要的數(shù)據(jù)裝入這個文件,再將該文件調(diào)回客戶端供客戶端使用。為了便于客戶端使用數(shù)據(jù),逐漸形成了一種非正式傳輸協(xié)議JSONP,該協(xié)議的一個要點就是允許用戶傳遞一個callback參數(shù)給服務(wù)端,然后服務(wù)端返回數(shù)據(jù)時會將這個callback參數(shù)作為函數(shù)名來裝入JSON數(shù)據(jù),這樣客戶端就可以隨意定制自己的函數(shù)來自動處理返回數(shù)據(jù)了。

如何使用JSONP

一種簡單的方式就是使用jQuery來實現(xiàn):

<!DOCTYPE html>
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
 <title>test</title>
 <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.js"></script>
  <script type="text/javascript">
  $(document).ready(function(){ 
   
  $.ajax({
    type: "get",
    async: false,
    url: "http://encounter.christmas023.space/json.php?name=mavis&age=18",
    dataType: "jsonp",
    jsonp: "callback",//傳遞給請求處理程序或頁面的,用以獲得jsonp回調(diào)函數(shù)名的參數(shù)名(一般默認為:callback)
    jsonpCallback:"message",//自定義的jsonp回調(diào)函數(shù)名稱,默認為jQuery自動生成的隨機函數(shù)名,也可以寫"?",jQuery會自動為你處理數(shù)據(jù)
    success: function(json){
     alert('你的名字:' + json.name + ' 年齡: ' + json.age);
     
    },
    error: function(){
     alert('fail');
    }
   });
 
  });
  </script>
</head>
<body>

</body>
</html>

  • type:請求類型,GET 或 POST,默認為 GET;
  • async:true(異步)或 false(同步),默認情況下為true,同步請求將鎖住瀏覽器,用戶其它操作必須等待請求完成才可以執(zhí)行;
  • url:發(fā)送請求的地址(跨域請求時應(yīng)為絕對地址);
  • dataType:指定服務(wù)器返回的數(shù)據(jù)類型;
  • jsonpCallback:自定義JSONP回調(diào)函數(shù)名稱;
  • success:請求成功后回調(diào)函數(shù);
  • error:請求失敗時調(diào)用此方法。

運行結(jié)果:

服務(wù)器返回的數(shù)據(jù)類型:

返回一個指定函數(shù)名為message的回調(diào)函數(shù),函數(shù)里面包裹的數(shù)據(jù)為JSON格式。

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

相關(guān)文章

  • jquery插件Jplayer使用方法簡析

    jquery插件Jplayer使用方法簡析

    這篇文章主要介紹了jquery插件Jplayer使用方法簡析,具有實用價值,感興趣的小伙伴們可以參考一下
    2016-04-04
  • JQUERY dialog的用法詳細解析

    JQUERY dialog的用法詳細解析

    本篇文章主要是對JQUERY中dialog的用法進行了詳細的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • jQuery DateTimePicker 日期和時間插件示例

    jQuery DateTimePicker 日期和時間插件示例

    jQuery UI很強大,其中的日期選擇插件Datepicker是一個配置靈活的插件,這篇文章主要介紹了jQuery DateTimePicker 日期和時間插件示例,有興趣的可以了解一下。
    2017-01-01
  • 基于jQuery實現(xiàn)以手風琴方式展開和折疊導航菜單

    基于jQuery實現(xiàn)以手風琴方式展開和折疊導航菜單

    這篇文章主要介紹了基于jQuery實現(xiàn)以手風琴方式展開和折疊導航菜單的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • jquery垂直公告滾動實現(xiàn)代碼

    jquery垂直公告滾動實現(xiàn)代碼

    公告滾動想必大家都有見到過吧,實現(xiàn)方法也有很多,下面為大家介紹使用jquery實現(xiàn)垂直公告滾動,感興趣的朋友不要錯過
    2013-12-12
  • jQuery中table數(shù)據(jù)的值拷貝和拆分

    jQuery中table數(shù)據(jù)的值拷貝和拆分

    在開發(fā)的過程中,經(jīng)常會遇到彈出框顯示前一頁table列表的情況,這時候會有好多方法來來解決。下面小編給大家介紹怎么用jquery將值拷貝到第二頁并拆分拷貝的值,需要的朋友參考下
    2017-03-03
  • jQuery實現(xiàn)網(wǎng)頁抖動的菜單抖動效果

    jQuery實現(xiàn)網(wǎng)頁抖動的菜單抖動效果

    這篇文章主要介紹了jQuery實現(xiàn)網(wǎng)頁抖動的菜單抖動效果,鼠標滑過菜單項可見到菜單項的抖動效果,涉及jquery鼠標事件及頁面元素樣式動態(tài)操作的技巧,需要的朋友可以參考下
    2015-08-08
  • jquery顯示隱藏元素的實現(xiàn)代碼

    jquery顯示隱藏元素的實現(xiàn)代碼

    下面小編就為大家?guī)硪黄猨query顯示隱藏元素的實現(xiàn)代碼。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • jQuery實現(xiàn)的上傳圖片本地預覽效果簡單示例

    jQuery實現(xiàn)的上傳圖片本地預覽效果簡單示例

    這篇文章主要介紹了jQuery實現(xiàn)的上傳圖片本地預覽效果,結(jié)合實例形式分析了jQuery上傳圖片本地預覽所涉及的相關(guān)頁面元素屬性動態(tài)操作實現(xiàn)技巧,需要的朋友可以參考下
    2018-03-03
  • jQuery實現(xiàn)的表格展開伸縮效果實例

    jQuery實現(xiàn)的表格展開伸縮效果實例

    這篇文章主要介紹了jQuery實現(xiàn)的表格展開伸縮效果,結(jié)合完整實例形式分析了jQuery響應(yīng)鼠標事件動態(tài)修改頁面元素的相關(guān)技巧,需要的朋友可以參考下
    2016-09-09

最新評論

沁水县| 扎鲁特旗| 安丘市| 奇台县| 罗山县| 诏安县| 平舆县| 武清区| 竹溪县| 镇宁| 景宁| 临高县| 同心县| 泊头市| 句容市| 新蔡县| 潞西市| 岫岩| 杂多县| 博客| 新乐市| 依安县| 乌拉特前旗| 罗田县| 星子县| 奈曼旗| 高陵县| 阆中市| 高平市| 宜州市| 博兴县| 苍南县| 中西区| 汉阴县| 巧家县| 当雄县| 博野县| 清丰县| 道孚县| 张家口市| 增城市|