jquery ajax 跨域請求

來源:互聯網
上載者:User

今天使用JQuery Ajax 在本地電腦擷取遠程伺服器資料的時候,發現使用$.ajax,$.getJSON,$.get這些都沒有反應,後來再統一個網站下測試了一下,代碼寫得沒有問題。後來想了想好想,有個跨域的說法。

百度以後,問題解決,這裡自己總結收藏一下:

相同網域名稱:

$.getJSON("GetDeviceRealData.aspx?deviceid=" + deviceid + "&rtype=json", function(data) {            $.each(data.list, function(i, o) {                html.push(o.name + ":" + o.value + o.unit + "<br/>");            });            $("#divdata").html(html.join(''));        });

這樣可以正常擷取資料並顯示l

不同網域名稱:

var pilot = {    getdata: function(deviceid) {        var html = [];        $.getJSON("http://www.aaa.com/GetDeviceRealData.aspx?deviceid=" + deviceid + "&rtype=json&jsoncallback=?", function(data) {            $.each(data.list, function(i, o) {                html.push(o.name + ":" + o.value + o.unit + "<br/>");            });            $("#divdata").html(html.join(''));        });    }}

重點說明:

1.在url後面加上 jsoncallback=? (或者callback=?)

2.在http://www.aaa.com/GetDeviceRealData.aspx返回json的時候 加上 :

string jsonb = Request["jsoncallback"];....Response.Write(jsonb + "(" + responseText + ")");

這樣,就可以正常擷取並顯示資料了。 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.