首頁 >web前端 >js教程 >jQuery實作跨域_jquery

jQuery實作跨域_jquery

WBOY
WBOY原創
2016-05-16 16:16:001303瀏覽

之前看過用jsonp實作跨域,一直沒有用到。現在剛好有個東西要到。試過了網路上的很多方法,都沒有用。最後終於搞清楚了用法,記錄一下。

客戶端:

複製程式碼 程式碼如下:


 $(document).ready(function(){
    $.ajax({
        type: 'GET',
        async: false,
        url: remote_url,
        dataType: 'jsonp',
        jsonp: 'callback',
        jsonpCallback: 'fun',
        data: {a: 'b'},
        sucess: function(json) {
            alert(json);
        }
    });
});
function fun(json) {
    alert(json);
 }

伺服器端

複製程式碼 程式碼如下:

header('Content-Type: application/json; charset=utf-8');//輸出頭
//your code
echo $GET['callback'] . '(' . json_encode($GET) . ')';

一定要呼叫客戶端js中的回呼函數,不然會出錯。

關於js跨越,上面一種方法需要服務端的配合,輸出回呼函數。

假如需要造訪別人的網站抓取一些東西,除了用iframe之外,如果需要使用js,如何來處理呢。

我們知道,服務端存取遠端鏈接,是不存在跨域問題的。因此,我們可以繞一個彎,使用js存取我們本地的程序,在程式中存取我們的目標網址。這是一種新的思路,有需要的可以嘗試。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn