jsonp跨域

爲何要 jsonp 跨域就很少講了。  域名、端口、協議。三樣有一處不一樣就須要跨域
 
我使用的是 jquery 的ajax
$.ajax({
      type:'get',
      dataType:'jsonp',
      jsonpCallback:'getMessage',
      url:'url',
         success:function(data){
             console.log(data);
           }
      })

這和不少網上的 jsonp 用法同樣啊。  之前調用過可是一直報錯。其實這樣是可以請求到後臺。後臺也返回給你了。 可是就是請求不到。以日後臺都是返回的json格式的。 javascript

如:java

 1 {'name':'123',age:1} jquery

可是 dataType 的格式是 jsonp 格式。後臺返回格式是Json,ajax固然解析不出來。
 
jsonp是經過連接的參數來返回數據的。 ajax多了一個 jsonpCallback 的屬性。 在返回數據的url參數後面中有 jsonpCallback:getMessage。
 
說了這麼多後臺應該返回什麼數據。 
 
應該返回   getMessage(data) 。  這個data能夠是任何類型的。(對象、字符串、數值、數值...);
 
這麼看你們就知道這是什麼了。回調函數  啊。
 
ajax至關於封裝了一個函數。
 
getMessage(data){   //這個函數名對應  ajax的  jsonpCallback:'getMessage'

}

  

後臺返回函數名調用這個函數。 ajax就能解析data數據了。
 
 
注意點:
 
後臺必定要返回   jsonpCallback:getMessage 對應的函數名。
 
假設:
 
jsonpCallback:a,  那麼後臺返回的數據是 a(值)。
相關文章
相關標籤/搜索