JSONP是JSON with padding(填充式JSON或參數(shù)式JSON)的簡寫,是應(yīng)用JSON的一種新方法,常用于務(wù)器與客戶端跨源通信,在后來的Web服務(wù)中非常流行。本文將詳細(xì)介紹JSONP

 

基礎(chǔ)

  JSONP的基本思想是,網(wǎng)頁通過添加一個<script>元素,向服務(wù)器請求JSON數(shù)據(jù),這種做法不受同源政策限制;服務(wù)器收到請求后,將數(shù)據(jù)放在一個指定名字的回調(diào)函數(shù)里傳回來

  當(dāng)通過<script>元素調(diào)用數(shù)據(jù)時,響應(yīng)內(nèi)容必須用javascript函數(shù)名和圓括號包裹起來。而不是發(fā)送這樣一段JSON數(shù)據(jù),這就是JSONP中P的意義所在

[1, 2, {"buckle": "my shoe"}]

  JSONP看起來與JSON差不多,只不過是被包含在函數(shù)調(diào)用中的JSON,它會發(fā)送這樣一個包裹后的JSON響應(yīng):

        		

網(wǎng)友評論