cocos2d-js跨域訪問問題,cocos2d-js請求網路資料

來源:互聯網
上載者:User
下面是cocos2d-js請求網路資料的代碼:

var HttpRequest = {    /*     * 網路請求之GET     * url 請求的網路地址     * callback 回調參數     * */    GET:function(url,callback){        var xhr = cc.loader.getXMLHttpRequest();        xhr.open("GET",url,true);        xhr.onreadystatechange = function () {            if (xhr.readyState == 4 && (xhr.status >= 200 && xhr.status <= 207)) {                err = false;            }else{                err = true;            }            var response = xhr.responseText;            callback(err,response);        };        xhr.send();    },    /*     * 網路請求之POST     * url 請求的網路地址     * params  請求參數  ("id=1&id=2&id=3")     * callback 回調參數     * */    POST:function(url,params,callback){        var nums = arguments.length        if(nums == 2){            callback = arguments[1];            params = "";        }        var xhr = cc.loader.getXMLHttpRequest();        xhr.open("POST", url);        xhr.setRequestHeader("Content-Type","text/plain;charset=UTF-8");        xhr.onreadystatechange = function () {            if (xhr.readyState == 4 && (xhr.status >= 200 && xhr.status <= 207)) {                err = false;            }else{                err = true;            }            var response = xhr.responseText;            callback(err,response);        };        xhr.send(params);    }}//EXMAPLE/* HttpRequest.POST("http://127.0.0.1:3000/test","id=1&ids=2", function(err,data){ if(err){ //錯誤處理 }else{ cc.log(data); } }) */

但是,請求網路出現了:No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:63342' is therefore not allowed access.

這是因為瀏覽器不能跨域訪問,我們在服務端找到這個要請求的檔案:設定一下header



這樣,就成功返回了資料?但是!!!,沒有成功,暈,原因是這個php調用header之前不能有任何輸出,必須改編碼為UTF-8 無rom格式,弄了一晚上卡在這個點上!!!

以上就介紹了cocos2d-js跨域訪問問題,cocos2d-js請求網路資料,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

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