jquery的ajax和getJson跨域擷取json資料__js

來源:互聯網
上載者:User

很多開發人員在使用jquery在前端和伺服器端進行資料互動,所以很容易會認為在前端利用jquery就可以讀取任何網站的資料了。近日在進行開發時,因為要和第三方公司的一個項目進行資料的共用,因為考慮多不佔用伺服器的資源,遂決定直接在html進行資料的讀取,不走伺服器端進行中轉了。然後正好就遇到了瀏覽器端跨域訪問的問題。

跨域的安全限制都是指瀏覽器端來說的,伺服器端不存在跨域安全限制的問題。

目前瀏覽器端跨域訪問常用的兩種方法有兩種:

1、通過jQuery的ajax進行跨域,這其實是採用的jsonp的方式來實現的。

jsonp是英文json with padding的縮寫。它允許在伺服器端產生script tags至返回至用戶端,也就是動態產生javascript標籤,通過javascript callback的形式實現資料讀取。

html頁面端範例程式碼: ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 //首先要引入jquery的js包 jQuery(document).ready( function (){      $.ajax({          type : "get" , //jquey是不支援post方式跨域的          async: false ,          url : "http://api.taobao.com/apitools/ajax_props.do" , //跨域請求的URL          dataType : "jsonp" ,          //傳遞給請求處理常式,用以獲得jsonp回呼函數名的參數名(預設為:callback)          jsonp: "jsoncallback" ,          //自訂的jsonp回呼函數名稱,預設為jQuery自動產生的隨機函數名          jsonpCallback:
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.