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

jsonp跨域獲取數(shù)據(jù)的基礎(chǔ)教程

 更新時(shí)間:2018年07月01日 15:48:28   作者:3scarecrow  
這篇文章主要給大家介紹了關(guān)于jsonp跨域獲取數(shù)據(jù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

由于瀏覽器有同源策略,所以要想獲取非同源(協(xié)議,域名,端口三者有一不同都算非同源)的頁面的數(shù)據(jù),就得進(jìn)行跨域

(1) jsonp原理

由于script標(biāo)簽的src屬性可以訪問非同源的js腳本,所以通過src屬性訪問服務(wù)器會(huì)返回函數(shù)的js代碼,而我們想要的數(shù)據(jù)就作為函數(shù)參數(shù)返回,而我們會(huì)先定義這個(gè)函數(shù),返回的js代碼就可執(zhí)行

(2) jsonp實(shí)現(xiàn)代碼

請(qǐng)求頁面

<!DOCTYPE html>
<html>
<head>
 <title></title>
</head>
<body>
<script type="text/javascript">
 function jsonp(data){
  console.log(username)
 }
</script>
<script type="text/javascript" src="jquery-1.8.3.min.js">
</script>
<script type="text/javascript">
 $(document).ready(function(){
  var url = "http://www.example.com/jsonp.php?callback=jsonp";
  var script = $('<script><\/script>');
  script.attr("src",url);
  $("body").append(script);
 });
</script>
</body>
</html>
<?php

$data = {'name': '張三'};
$callback = $_GET['callback'];
echo $callback."(".json_encode($data).")";

?php>

之后php會(huì)返回

jsonp({
 name:'niuni
})

然后PHP返回的代碼h會(huì)被請(qǐng)求頁面的jsonp方法執(zhí)行

(3)jQuery的簡(jiǎn)便jsonp跨域

<script>
 function showData (data) {
  console.info(data);
 }
 $(document).ready(function () {
  $("#btn").click(function () {
   $.ajax({
    url: "http://www.example.comjsonp",
    type: "GET",
    dataType: "jsonp",// 返回?cái)?shù)據(jù)類型
    jsonpCallback: "showData",//回調(diào)函數(shù)
    // 獲取數(shù)據(jù)成功就執(zhí)行success函數(shù)
    success: function (data) {
     console.info("data");
    }
   });
  });
 });
</script>

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論