婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 全面解析Ajax和jsonp使用總結

全面解析Ajax和jsonp使用總結

熱門標簽:福建微碼電話機器人 地圖標注與公司業務關系 提高電話機器人接通率 大學校門地圖標注 外呼系統api對接 銷售電銷機器人詐騙 廣西智能外呼系統多少錢 平涼高德地圖標注商戶要收費嗎 荊州智能電銷機器人

前言:ajax和jsonp可以與后臺通信,獲取數據和信息,但是又不用刷新整個頁面,實現頁面的局部刷新。

一、ajax

•定義:一種發送http請求與后臺進行異步通訊的技術。

•原理:實例化xmlhttp對象,使用此對象與后臺通信。

ajax的同源策略:

•ajax請求的頁面或資源只能是同一個域下面的資源,不能是其他域的資源,這是在設計ajax時基于安全考慮。

--------------------------------------------------------------------------------

ajax的方法:

1. $.ajax({}):

•常用參數: •url:請求網絡地址
•type:請求方式,默認是'GET',常用'POST'
•dataType:設置返回的數據格式,一般使用json,也可以是html和jsonp;
•data:設置發送給服務器的數據
•.done():設置請求成功后的回調函數
•.fail():設置請求失敗后的回調函數
•async:設置是否異步,默認值是'true',表示異步

•代碼運用:

$(function () {
  $("input").click(function () {
    $.ajax({
      url: "./data.json",
      type: "get",
      dataType: "json",
    });
    .done(function(data) {//請求成功的回調函數
      $("input").val(dat.name);
    })
    .fail(function() {
      alert('服務器超時,請重試!');
    });
  });
})
......
body>
  div>
    input type="button" value="xinzhi">
  /div>
/body>

說明:data表示后臺返回的數據;ajax使用需要依賴服務器環境。

2. $.get():

•$.get() 方法使用GET請求從服務器加載數據;也是一種無刷新的請求數據的ajax方法。

•參數:
•url:訪問的網址,需要遵循同源策略;
•data:發送到服務器的數據。
•function(data,status){}:請求成功運行的函數
•dataType:請求響應的數據類型。

//參考代碼:
$(function () {
  $("input").click(function () {
    $.get(
      "./data.json",
      function (data,status) {
        console.log(data.name);
      },
      "json"
    );
  });
})
......
body>
  div>
    input type="button" value="xinzhi">
  /div>
/body>

•$.get()方法的參數和$.ajax()不一樣,網址url為必須的參數,其他三個可選。
•data為返回的數據,status表示請求的狀態,一般有""success","error","timeout"等幾種。
•如果datatype類型為jsonp,也可以跨域請求數據。
•無請求失敗的回調函數。

3. $.post()

•$.get() 方法使用POST請求從服務器加載數據;
•其使用的方法和$.get()方法完全一樣。

4. $.load():

•從服務器加載數據,不需要指定datatype,返回的數據會自動放置到元素中。
•參數:

•URL:地址;
•data:請求的參數,可選;
•function(response,status,xhr):請求成功的回調函數。

$(function () {
  $("input").click(function () {
    $(".box").load(
      "./data.json",
      function (response,status) {
        console.log(data.name);
      }
    );
  });
})
......
body>
  div>
    input type="button" value="xinzhi">
    div class="box">/div>
  /div>
/body>

•返回的數據會放置在div中;
•不能跨域訪問數據;
•response為返回的數據,status為請求的狀態;
•無請求失敗的回調函數。

4. getJSON()

•方法使用 AJAX 的 HTTP GET 請求獲取 JSON 數據。
•參數:
•url: 請求網址,必須的參數;
•data: 發送給服務器的數據;
•function(data,status,xhr):請求成功的回調函數

$(function () {
  $("input").click(function () {
    $.getJSON(
      "./data.json",
      function(data,status) {
        console.log(data.name);
      },
    );
  });
})
......
body>
  div>
    input type="button" value="xinzhi">
  /div>
/body>

•方法直接獲取的是json數據;

•無返回失敗的回調函數;

•回調函數時命名函數,不是匿名函數;

5. getScript()

•方法使用 AJAX 的 HTTP GET 請求獲取并執行js代碼。

•參數:

•url: 請求網址,必須的參數;

•function(data,status):請求成功的回調函數

$(function () {
  $("input").click(function () {
    $.getScript(
      "./data.js",
      function(data,status) {
        console.log(data);
      },
    );
  });
})
......
body>
  div>
    input type="button" value="xinzhi">
  /div>
/body>

•返回結data是js代碼;

•該方法可以用來動態加載js代碼。

二、jsonp

•定義:一種可以實現跨域發送http請求的數據通信格式,可以嵌在ajax中使用。
•原理:利用script標簽可以跨域鏈接資源的特性。

用法一:函數傳參

script type="text/javascript">
  function aa(data){
    console.log(data.name);
  }
/script>
script type="text/javascript" src="....../data.js">/script>

說明:在外部定義一個data.js文件,這個文件的路徑可以與當前頁面不在同一個域下面。

data.js的內容:

aa({
  
  "data":{
    "name":"xiaohong",
    "age":"18"
  }
})

•將數據以頁面定義的函數的參數的形式傳遞進去,從而獲取數據。

•本質上可以將數據拆分,使得數據不用強制保存在同一個域名下。

用法二:利用ajax

$.ajax({
  url:'...../data.js',//可以不是本地域名 
  type:'get',
  dataType:'jsonp', //jsonp格式訪問
  jsonpCallback:'aa' //獲取數據的函數
})
.done(function(data){
  console.log(data.name);
})
.fail(function() {
  alert('服務器超時,請重試!');
});

•data.js的內容和上面一樣。

•使用ajax的方法本質上也是script標簽可以跨域鏈接資源,不過jquery為其封裝了相同的方法,看起來一樣。

•以上代碼的執行過程為:ajax通過jsonp技術跨域訪問data.js文件,通過找到aa()方法將其參數傳遞給.done方法的data參數執行.done方法。

•目前這種方式仍然有其局限性,就是必須知道data.js文件的名字和定義的方法aa,如果在僅僅知道域名的情況下,需要另外的方法.

用法三

var $input = $("input");
$input.keyup(function () {
  $.ajax({
    url:'https://sug.so.360.cn/suggest?',//請求360搜索的聯想數據
    type:'get',
    dataType:'jsonp', //jsonp格式訪問
    data: {word: $input.val()},
  })
  .done(function(data){
    console.log(data);
  })
  .fail(function() {
    alert('服務器超時,請重試!');
  });
})
....
body>
  input type="text">
/body>

•通過瀏覽器查看每次輸入關鍵字服務器發送回的數據包,找到js文件中header的地址以及相關的提交數據,發現key為word關鍵字,因此可以向服務器發送data數據。
•服務器返回的數據會自動傳給回調的匿名函數的參數data.

總結

以上所述是小編給大家介紹的Ajax和jsonp使用總結,需要的朋友參考下

您可能感興趣的文章:
  • ajax和jsonp跨域的原理本質詳解
  • 基于ajax和jsonp的原生封裝(實例)
  • 原生js的ajax和解決跨域的jsonp(實例講解)
  • 基于js原生和ajax的get和post方法以及jsonp的原生寫法實例
  • 使用原生js封裝的ajax實例(兼容jsonp)
  • 原生js jquery ajax請求以及jsonp的調用方法
  • ajax與jsonp的區別及用法

標簽:內江 海南 邯鄲 衡陽 德陽 黔東 樂山 婁底

巨人網絡通訊聲明:本文標題《全面解析Ajax和jsonp使用總結》,本文關鍵詞  全面,解析,Ajax,和,jsonp,使用,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《全面解析Ajax和jsonp使用總結》相關的同類信息!
  • 本頁收集關于全面解析Ajax和jsonp使用總結的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    91国偷自产一区二区三区观看| 蜜臀久久久99精品久久久久久| 中文字幕一区二区三区蜜月| 婷婷成人激情在线网| 成人性生交大片免费| 久久久三级国产网站| 美国精品在线观看| 91精品国产一区二区人妖| 亚洲v中文字幕| 欧美日韩精品是欧美日韩精品| 亚洲日本护士毛茸茸| 91亚洲男人天堂| 亚洲女人的天堂| av网站一区二区三区| 亚洲国产精品精华液2区45| 国产sm精品调教视频网站| 国产日韩综合av| 成+人+亚洲+综合天堂| 中文字幕一区二区三区精华液| 成人aaaa免费全部观看| 一区二区三区在线观看欧美| 亚洲韩国一区二区三区| 久久精品国产亚洲aⅴ| 2023国产精华国产精品| 成人性视频免费网站| 亚洲欧美国产77777| 在线亚洲高清视频| 天堂一区二区在线免费观看| 欧美日本在线视频| 久久国产尿小便嘘嘘尿| 国产精品久久久久久久久果冻传媒 | 一区二区三区日韩在线观看| 欧美在线观看一区二区| 免费人成在线不卡| 久久久久国产精品麻豆| 色综合天天天天做夜夜夜夜做| 调教+趴+乳夹+国产+精品| 99re这里只有精品6| 午夜久久久影院| 婷婷综合久久一区二区三区| 精品国产伦一区二区三区观看体验| 久久成人麻豆午夜电影| 国产精品久久免费看| 欧美亚洲国产一区二区三区va| 日本不卡123| 亚洲精品视频在线看| 精品免费日韩av| 一本大道久久a久久综合| 一区二区三区小说| 精品裸体舞一区二区三区| 欧美综合在线视频| 国产高清亚洲一区| 亚洲成va人在线观看| 亚洲国产精品成人综合色在线婷婷| 亚洲国产美国国产综合一区二区| 久久精品亚洲精品国产欧美| 欧美精品一二三区| 色中色一区二区| 久久99精品久久久久久动态图| 国产精品欧美一级免费| 欧美videofree性高清杂交| 91蜜桃传媒精品久久久一区二区| 激情综合网av| 午夜婷婷国产麻豆精品| 亚洲自拍偷拍av| 日韩理论片网站| 久久久激情视频| 久久综合九色综合久久久精品综合| 欧美网站大全在线观看| 欧美午夜精品久久久| 欧美性感一区二区三区| 欧美人成免费网站| 777久久久精品| 91精品国产免费久久综合| 欧美日韩亚洲综合一区二区三区| 欧美中文字幕一二三区视频| 色综合天天综合色综合av| 五月激情综合色| 亚洲mv在线观看| 久久97超碰色| 99久久久久久99| 欧美男生操女生| 欧美酷刑日本凌虐凌虐| 欧美日韩激情一区二区三区| 欧美老女人第四色| 日韩一区二区三区免费看 | 欧美日韩精品二区第二页| 在线影视一区二区三区| av网站一区二区三区| 91香蕉国产在线观看软件| 狠狠色丁香婷综合久久| 久久99久久99精品免视看婷婷 | 在线成人免费视频| 日韩精品高清不卡| 国产一区日韩二区欧美三区| 亚洲欧美偷拍卡通变态| 欧美不卡一区二区三区四区| 91一区二区三区在线观看| 久久精品二区亚洲w码| 亚洲精品免费电影| 精品人在线二区三区| 精品久久久久香蕉网| 91高清在线观看| 成人午夜大片免费观看| 天堂影院一区二区| 一区二区三区在线免费播放| 久久九九国产精品| 蓝色福利精品导航| 99re这里都是精品| 九一久久久久久| 亚洲综合激情网| 国产精品久久久久久久蜜臀| 在线视频中文字幕一区二区| 国产成人在线看| 国产成人在线视频免费播放| 国产成人自拍在线| 精品欧美久久久| 欧美一区二区视频免费观看| 99久久久国产精品免费蜜臀| 亚洲福利视频一区| 国产精品国产三级国产aⅴ入口 | 亚洲欧美一区二区不卡| 久久免费精品国产久精品久久久久| 91久久国产最好的精华液| 麻豆成人综合网| 欧美日韩在线播放三区四区| 91碰在线视频| 色婷婷av一区二区三区大白胸 | 欧洲一区二区三区免费视频| 成人av第一页| 老司机一区二区| 欧美电影一区二区| 日韩亚洲国产中文字幕欧美| 91在线小视频| 精品一二三四区| 久久er99精品| 激情综合五月婷婷| 国内精品国产三级国产a久久| 亚洲高清三级视频| 亚洲欧洲日韩在线| 亚洲欧洲日韩女同| 亚洲欧美怡红院| 9191精品国产综合久久久久久 | 国产成人av电影在线播放| 不卡视频一二三| 99久久er热在这里只有精品15| 成人黄色av电影| 91蜜桃婷婷狠狠久久综合9色| 99久久免费视频.com| 26uuu久久天堂性欧美| 国产婷婷色一区二区三区四区| 亚洲色图色小说| 亚洲日本一区二区三区| 亚洲v精品v日韩v欧美v专区| 蜜臀久久99精品久久久画质超高清| 日本不卡免费在线视频| 国产精品欧美久久久久一区二区| 国产69精品久久99不卡| 成人av资源网站| 欧美日韩午夜在线视频| 91精品免费在线| 国产精品欧美极品| 亚洲综合一二区| 91精品国产乱| 中文字幕亚洲区| 亚洲最新视频在线观看| 蜜臀av亚洲一区中文字幕| 99久久精品99国产精品| 韩国一区二区在线观看| 国产精品卡一卡二| 免费人成在线不卡| 日本韩国欧美在线| 久久亚洲捆绑美女| 亚洲一区二区三区四区中文字幕| 欧美高清视频一二三区| 国产一区二区三区黄视频| 色综合天天做天天爱| 日韩欧美在线影院| 国产精品久久久久久福利一牛影视 | 亚洲人成网站影音先锋播放| 麻豆国产欧美日韩综合精品二区| 99精品视频在线免费观看| 欧美日韩国产高清一区| 欧美韩日一区二区三区| 日韩国产高清影视| 午夜精品久久久久久久99水蜜桃| 91精品国产综合久久久久久久| 国产精品福利影院| 国产精品国模大尺度视频| 美腿丝袜亚洲色图| 欧美色区777第一页| 国产精品午夜久久| 亚洲综合在线视频| 亚洲国产综合视频在线观看| 国产在线精品一区二区三区不卡| 欧美乱妇15p| 天堂久久一区二区三区| 日本韩国欧美三级| 欧美精品日日鲁夜夜添| 欧美性高清videossexo|