亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

原生js的ajax和解決跨域的jsonp(實例講解)

2019-11-19 15:09:54
字體:
來源:轉載
供稿:網友

最近慢慢感覺,學再多框架,庫,都不如老老實實先把基礎弄扎實了。

不說廢話,先上一個用ajax請求下本地的一個.txt文件

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>Title</title>  <script>    window.onload =function(){      var oBtn = document.getElementById('btn');      oBtn.onclick = function(){        //創建XHR對象        var xhr = new XMLHttpRequest();        //請求的方式,地址,是否異步        xhr.open('get','test.txt',true);        //請求的確定操作,初始化,相當于搜索時,敲擊的回車        xhr.send(null);        //請求的readyState每變化一次就執行一次onreadystatechange函數        //其中readyState表示的是:請求/響應過程的當前活動階段        //readyState有如下取值        /*        *  0:未初始化,尚未調用send()方法        *  1: 啟動        *  2:發送        *  3:接收        *  4:完成        */        xhr.onreadystatechange =function(){          if(xhr.readyState ==4){            alert(xhr.responseText);          }        }      };    };  </script></head><body><input type="button" id="btn" value="show"></body></html>

執行效果如下,點擊show就會通過ajax請求本地的.txt文件。

代碼比較簡單,加上注釋,相信很容易就看得懂。

但是工作中我們經常會請求其他域下的資源(因為同源策略),這個時候就遇到了跨域(協議,端口,域名任何一個不同就算是跨域)。

解決跨域的一種常用辦法就是jsonp,雖然他有局限性(只支持get請求),不過優點是兼容老式瀏覽器(不過現在好像很少有人在意老式瀏覽器了)。

jsonp的基本原理:就是通過動態創建script標簽,script標簽的src是沒有跨域限制的。

接下來上一個類似百度搜索下拉的頁面

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>Title</title>  <style>    *{      margin: 0;      padding: 0;    }    input{      width:300px;      height:30px;      border:1px solid lightgray;      margin-top: 150px;      margin-left: 200px;      padding-left: 5px;    }    ul{      width:307px;      list-style: none;      margin-left: 200px;      display: none;    }    li{      height:30px;      border: 1px solid lightgray;      line-height: 30px;      padding-left: 5px;    }  </style>  <script>    function callbackD(response){      var oUl = document.getElementById('ulList');      var html='';      if(response.s.length !=0){        oUl.style.display='block';        for(var i = 0;i<response.s.length;i++){          html+='<li>'+response.s[i]+'</li>'        }      }      oUl.innerHTML = html;    }  </script>  <script>    window.onload = function(){      //獲取dom元素      var oData = document.getElementById('inputSearch');      var oUl = document.getElementById('ulList');      //鍵盤按下后抬起觸發事件(onkeyup)      oData.onkeyup = function(){        if(oData.value != ''){          //創建標簽(createElement)          var script = document.createElement("script");          //添加地址          script.src='http://unionsug.baidu.com/su?wd='+this.value+'&p=3&cb=callbackD';          //添加給body的(成為body包涵的孩子)          document.body.appendChild(script);        }else{          oUl.style.display='none';        }      }    };  </script></head><body><input type="text" id="inputSearch"><ul id="ulList">  <li>123</li></ul></body></html>

執行效果如下:

代碼也相對比較簡單,加上代碼的注釋,一定很容易看懂,這就是解決跨域的一種常用辦法,其他有反向代理,CORS啊等等,等我學好再整理出來。

以上這篇原生js的ajax和解決跨域的jsonp(實例講解)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
最近免费中文字幕视频2019| 国产亚洲人成网站在线观看| 日韩亚洲欧美成人| 亚洲色图av在线| 国产精品444| 78色国产精品| 久久九九全国免费精品观看| 欧美视频二区36p| 亚洲精品中文字幕有码专区| 中文字幕久久久| 久久久精品欧美| 久久免费视频在线| 国内精品久久久久久久久| 日韩免费av一区二区| 欧美精品免费看| 日韩成人激情在线| 成人网欧美在线视频| 欧美国产视频一区二区| 69av成年福利视频| 51久久精品夜色国产麻豆| 日韩的一区二区| 国产精品美女在线| 亚洲欧美国产一本综合首页| 亚洲欧洲日产国码av系列天堂| 亚洲乱码av中文一区二区| 国产成人精品综合久久久| 亚洲色图13p| 欧洲精品在线视频| 国产视频自拍一区| 精品久久久久久久久中文字幕| 亚洲视频在线播放| 日韩在线视频中文字幕| 久久韩国免费视频| 91久久精品国产91久久| 亚洲欧美中文日韩v在线观看| 国产日韩精品一区二区| 欧美诱惑福利视频| 色小说视频一区| 国产精品丝袜高跟| 欧美日韩国产中文精品字幕自在自线| 最近中文字幕日韩精品| 欧美精品日韩www.p站| 日韩电影免费观看中文字幕| 久久久久久久久久久免费| 精品国产一区二区三区在线观看| 在线看福利67194| 国产v综合v亚洲欧美久久| 欧美日韩中文字幕综合视频| 91色在线视频| 精品中文字幕在线| 久久中文字幕在线视频| 亚洲视频axxx| 日本成人免费在线| 欧美精品久久久久久久| 精品国产乱码久久久久久虫虫漫画| 亚洲高清在线观看| 亚洲偷熟乱区亚洲香蕉av| 这里只有精品丝袜| 国产成人综合一区二区三区| 亚洲 日韩 国产第一| 日韩欧美成人精品| 日韩国产在线播放| 久久艳片www.17c.com| 欧美日韩国产精品一区二区不卡中文| 欧美激情视频三区| 亚洲精品mp4| 91精品国产色综合久久不卡98口| 丝袜亚洲欧美日韩综合| 国产精品女人网站| 中文字幕精品www乱入免费视频| 成人激情在线观看| 精品国产福利视频| 国产亚洲精品久久久久久| 日韩免费在线播放| 97超级碰在线看视频免费在线看| 欧美插天视频在线播放| 日韩亚洲成人av在线| 亚洲一区精品电影| 久久精视频免费在线久久完整在线看| 日韩激情视频在线播放| 久久久亚洲福利精品午夜| 欧美电影免费观看电视剧大全| 亚洲欧美一区二区三区情侣bbw| 国产精品国语对白| 国产成人久久久精品一区| 国产精品精品久久久| 国产精品欧美日韩| 亚洲乱码国产乱码精品精天堂| 亚洲视频专区在线| 亚洲国产成人精品女人久久久| 蜜臀久久99精品久久久无需会员| 国产精品久久久久久久app| 懂色aⅴ精品一区二区三区蜜月| 丝袜一区二区三区| 爽爽爽爽爽爽爽成人免费观看| 国产精品视频网| 日韩亚洲国产中文字幕| 国产精品扒开腿做爽爽爽的视频| 亚洲尤物视频网| 亚洲在线视频观看| 在线成人免费网站| 91久久国产综合久久91精品网站| 亚洲国产天堂网精品网站| 国产日韩中文字幕| 欧美极品第一页| 国产精品视频导航| 黑人与娇小精品av专区| 亚洲电影免费观看高清完整版在线| 最新91在线视频| 国产精品免费一区二区三区都可以| 亚洲国产精彩中文乱码av| 国产精品久久久久免费a∨| 欧美精品久久久久久久久久| 91免费视频国产| 欧美午夜精品久久久久久久| 欧美高清视频一区二区| 国产成人免费91av在线| 亚洲国产精品yw在线观看| 日本午夜在线亚洲.国产| 亚洲白虎美女被爆操| 国产精品扒开腿做| 精品福利在线看| 久久伊人精品一区二区三区| 亚洲人精选亚洲人成在线| 成人激情视频网| 国产成人中文字幕| 欧美电影免费播放| 亚洲品质视频自拍网| 久久国产精品久久久久久久久久| 久久亚洲一区二区三区四区五区高| 日韩va亚洲va欧洲va国产| 日韩在线精品一区| 亚洲欧美制服第一页| 欧美成人久久久| 久久精品国产综合| 91在线色戒在线| 欧美午夜片欧美片在线观看| 亚洲欧美国产va在线影院| 久久99精品久久久久久青青91| 亚洲精品国产精品国产自| 黄色一区二区在线| 日韩一级裸体免费视频| 97超碰蝌蚪网人人做人人爽| 国产精品91久久久久久| 久久视频在线直播| 日韩最新免费不卡| 久久激情视频久久| 久久久久久亚洲| 国产精品老女人精品视频| 久久久久久久一| 亚洲影院高清在线| 国产精品久久91| 黑人巨大精品欧美一区二区三区| 日韩美女av在线免费观看| 久久久综合av| 在线日韩精品视频| 欧美亚洲国产成人精品| 成人精品视频久久久久| 91高潮精品免费porn| 亚洲免费av片| 欧美黑人视频一区| 91精品国产91久久久久| 色综合影院在线| 色无极影院亚洲|