1. 程式人生 > >JQUERY的AJAX中 get()、post()的跨域方法

JQUERY的AJAX中 get()、post()的跨域方法

get()請求:

        $.ajax({
        type: "get",
        url: "你的請求地址",
        dataType: 'jsonp', //【jsonp進行跨域請求 只支援get】
        data:{ //【這裡填寫是傳給服務端的資料 可傳可不傳 資料必須是json格式】
            "a":"b",
            "c":"d"
        },
        success: function(data) { //【成功回撥】
            console.log(data);
        },
        error: function(xhr, type) { //【失敗回撥】
        }
        });

post()請求:

【在進行跨域前,你需要知道的東西】:用ajax進行跨域請求,很多人就知道jsonp,然而很多人根本就不知道使用ajax跨域同時使用jsonp只能支援get方式請求,如果你進行post請求會執行error,並且返回readyState=4同時status=200

        $.ajax({
            type:"post",
            url:"你的請求地址",
            data:{ //【這裡填寫是傳給服務端的資料 可傳可不傳 資料必須是json格式】
                "a":"b",
                "c":"d"
            },
            dataType:'json',  //【這裡要小心啊,不要用jsonp,一定是json】
            crossDomain: true,  //【這個很重要,一定要加】
            success:function(result){
                console.log(result);
            },
            error:function(result){
                console.log(result);
            }
        });

(伺服器端程式碼):就是後臺語言端(這裡我以php為例)
在你執行所有操作之前加上它,使用的框架的建議放在框架的入口檔案的最前面

        header('Access-Control-Allow-Origin: *');
        header('Access-Control-Allow-Methods: POST');
        header('Access-Control-Max-Age: 1000');