Jsonp(JSON with Padding) 是 json 的一種"使用模式",可以讓網(wǎng)頁從別的域名(網(wǎng)站)那獲取資料,即跨域讀取數(shù)據(jù)。
為什么我們從不同的域(網(wǎng)站)訪問數(shù)據(jù)需要一個特殊的技術(shù)(JSONP )呢?這是因為同源策略。
同源策略,它是由Netscape提出的一個著名的安全策略,現(xiàn)在所有支持JavaScript 的瀏覽器都會使用這個策略。
首先:jsonp是json用來跨域的一個東西。
原理是通過script標(biāo)簽的跨域特性來繞過同源策略。
經(jīng)過測試實驗:
發(fā)送端:
$.ajax({type : "post",url : "ajax.php",dataType : "jsonp",jsonp: "callback",//傳遞給請求處理程序或頁面的,用以獲得jsonp回調(diào)函數(shù)名的參數(shù)名(默認(rèn)為:callback)jsonpCallback:"jsonpcallback",//自定義的jsonp回調(diào)函數(shù)名稱,默認(rèn)為jQuery自動生成的隨機函數(shù)名success : function(json){alert('success');},error:function(){alert('fail');}}); 服務(wù)器端(php):
<?php$data = "aaa";$callback = $_GET['callback'];echo $callback.'('.json_encode($data).')';exit;?> 


















