JSON:把響應(yīng)的結(jié)果當(dāng)作 JSON 執(zhí)行,并返回一個 JavaScript 對象。如果指定的是 json,響應(yīng)結(jié)果作為一個對象,在傳遞給成功處理函數(shù)之前使用 jQuery.parseJSON 進行解析。 解析后的 JSON 對象可以通過該 jqXHR 對象的 responseJSON 屬性獲得的。json 的處理只要是在 ajaxConvert 方法中把結(jié)果給轉(zhuǎn)換成需要是 json 格式,這是后面的內(nèi)容,這里主要研究下 jsonp 的預(yù)處理。
JSONP:是一個非官方的協(xié)議,它允許在服務(wù)器端集成 Script tags 返回至客戶端,通過javascript callback 的形式實現(xiàn)跨域訪問(這僅僅是 JSONP 簡單的實現(xiàn)形式)。JSON 系統(tǒng)開發(fā)方法是一種典型的面向數(shù)據(jù)結(jié)構(gòu)的分析和設(shè)計方法,以活動為中心,一連串的活動的順序組合成一個完整的工作進程。
JSONP 出現(xiàn)的根源:
JSON 和 JSONP
與 XML 相比,JSON 是一個輕量級的數(shù)據(jù)交換格式。JSON 對于JavaScript開發(fā)人員充滿魅力的原因在于 JSON 本身就是 Javascript中的對象。
例如一個 ticker 對象:
var ticker = {symbol:'IBM',price:100} 而JSON串就是 {symbol:'IBM',price:100}
index.html 中:
function showPrice(data){ alert("Symbol:" + data.symbol + ", Price:" + data.price) }
然后動態(tài)加載 ticker.js 腳本
var data = {symbol:'IBM', price:100}; showPrice(data);
所以總結(jié)其實 json 的一個核心點:允許用戶傳遞一個 callback 參數(shù)給服務(wù)端,然后服務(wù)端返回數(shù)據(jù)時會將這個 callback 參數(shù)作為函數(shù)名來包裹住 JSON 數(shù)據(jù),這樣客戶端就可以隨意定制自己的函數(shù)來自動處理返回數(shù)據(jù)了。
請驗證,完成請求
由于請求次數(shù)過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報