新聞中心
AJAX(異步的 JavaScript 和 XML
)是用于創(chuàng)建快速動態(tài)網(wǎng)頁的一種技術,它在不重新加載整個頁面的情況下,與服務器交換數(shù)據(jù)并更新部分網(wǎng)頁,ajax 使用XMLHttpRequest
對象在后臺與服務器交換數(shù)據(jù),XMLHttpRequest 是 AJAX 的基礎,它允許客戶端 JavaScript 通過 HTTP
請求連接到遠程服務器。
十載來,成都創(chuàng)新互聯(lián)不忘初心,以網(wǎng)站建設互聯(lián)網(wǎng)行業(yè)服務標桿為目標,不斷提升技術設計服務水平,幫助客戶在互聯(lián)網(wǎng)推廣自己的產(chǎn)品、服務和品牌,為客戶創(chuàng)造價值從而實現(xiàn)自身價值!
但是,由于受到瀏覽器的限制,這種方法不可以進行跨域訪問,如果使用這種方法進行跨域訪問則會出現(xiàn)安全問題。不過,我們可以發(fā)現(xiàn),在web頁面跨域調(diào)用 js文件時,不會受到瀏覽器的限制,所以我們可以利用將遠程服務器端的數(shù)據(jù)裝入js格式的文件,然后再用來供客戶端進行調(diào)用。
JSON(JavaScript 對象表示法
)是一種輕量級的文本數(shù)據(jù)交換格式,它具有自我描述性,易于理解。JSON 可通過 JavaScript
進行解析,JSON 數(shù)據(jù)可使用 AJAX
進行傳輸。
JSON實例:
{ "employees": [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }, { "firstName":"Thomas" , "lastName":"Carter" } ] }
JSON 語法是 JavaScript 對象表示法語法的子集:
數(shù)據(jù)在名稱/值
對中, 數(shù)據(jù)由逗號
分隔 ,花括號
保存對象, 方括號
保存數(shù)組
。
JSON的特性
- 純文本,易于跨平臺傳遞
- Javascript原生支持,后臺語言幾乎全部支持
- 使用輕量級的文本數(shù)據(jù)交換格式,適合在互聯(lián)網(wǎng)中傳遞
- 比 XML 更小、更快,更易解析。
基于JSON
的這些特性,可以通過使服務器動態(tài)生成JSON
文件,然后將客戶端需要的數(shù)據(jù)裝入這個文件,再將該文件調(diào)回客戶端供客戶端使用。為了便于客戶端使用數(shù)據(jù),逐漸形成了一種非正式傳輸協(xié)議JSONP
,該協(xié)議的一個要點就是允許用戶傳遞一個callback
參數(shù)給服務端,然后服務端返回數(shù)據(jù)時會將這個callback
參數(shù)作為函數(shù)名來裝入JSON
數(shù)據(jù),這樣客戶端就可以隨意定制自己的函數(shù)來自動處理返回數(shù)據(jù)了。
如何使用JSONP
一種簡單的方式就是使用jQuery來實現(xiàn):
test
type
:請求類型,GET 或 POST,默認為 GET;async
:true(異步)或 false(同步),默認情況下為true,同步請求將鎖住瀏覽器,用戶其它操作必須等待請求完成才可以執(zhí)行;url
:發(fā)送請求的地址(跨域請求時應為絕對地址);dataType
:指定服務器返回的數(shù)據(jù)類型;jsonpCallback
:自定義JSONP回調(diào)函數(shù)名稱;success
:請求成功后回調(diào)函數(shù);error
:請求失敗時調(diào)用此方法。
運行結(jié)果:
服務器返回的數(shù)據(jù)類型:
返回一個指定函數(shù)名為message
的回調(diào)函數(shù),函數(shù)里面包裹的數(shù)據(jù)為JSON
格式。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
分享名稱:通過jsonp獲取json數(shù)據(jù)實現(xiàn)AJAX跨域請求
文章地址:http://fisionsoft.com.cn/article/ppsehs.html