Json跨域

轉自博客

原因

工作上遇到的要求需要后臺ajax獲取一些信息,怕麻煩就用HBuilder來編譯靜態的html和eclipse來編譯相關的java代碼了,不過由于跨域的問題,導致無法進行前后臺的數據交互,那么什么是跨域?

跨域

用表格來說明比較方便


跨域
解決方案

jsonp

Web頁面上調用js文件時則不受是否跨域的影響(不僅如此,我們還發現凡是擁有”src”這個屬性的標簽都擁有跨域的能力所以跨域訪問數據就只有一種可能,那就是在遠程服務器上設法把數據裝進js格式的文件里,供客戶端調用和進一步處理;web客戶端通過與調用腳本一模一樣的方式,來調用跨域服務器上動態生成的js格式文件(一般以JSON為后綴),顯而易見,服務器之所以要動態生成JSON文件,目的就在于把客戶端需要的數據裝入進去。為了便于客戶端使用數據,逐漸形成了一種非正式傳輸協議,人們把它稱作JSONP,該協議的一個要點就是允許用戶傳遞一個callback參數給服務端,然后服務端返回數據時會將這個callback參數作為函數名來包裹住JSON數據,這樣客戶端就可以隨意定制自己的函數來自動處理返回數據了。

實際代碼

$.ajax({ url: url, dataType: 'jsonp', jsonp: "jsonpCallback", data: { }, success: function(data) { console.log(data); } });

就是那么簡單 在url下添加dataType 和 jsonp即可

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 一、PHP 認識PHP PHP是一種創建動態交互性站點的服務器端腳本語言PHP開源、免費、應用廣泛 【例如】:Fa...
    越IT閱讀 745評論 1 2
  • 同源策略 就是瀏覽器規定的只有相同的協議,相同的域名,相同的端口,滿足以上條件才能讀取對方的資源,否則不能。 什么...
    邵志遠閱讀 279評論 0 0
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,915評論 18 139
  • 同源策略 就是瀏覽器規定的只有相同的協議,相同的域名,相同的端口,滿足以上條件才能讀取對方的資源,否則不能。 什么...
    datagirl閱讀 260評論 0 0
  • 0. 前言 說到AJAX就會不可避免的面臨兩個問題。 AJAX以何種格式來交換數據? 第二個是跨域的需求如何解決?...
    公子七閱讀 23,660評論 7 67