ホームページ > バックエンド開発 > PHPチュートリアル > cocos2d-js のクロスドメイン アクセスの問題、cocos2d-js がネットワーク データを要求する

cocos2d-js のクロスドメイン アクセスの問題、cocos2d-js がネットワーク データを要求する

WBOY
リリース: 2016-07-29 09:13:10
オリジナル
1480 人が閲覧しました

以下は、ネットワーク データを要求する 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);
 }
 })
 */
ログイン後にコピー

ただし、要求ネットワークが表示されます: 要求されたリソースのオリジン 'http:/ に 'Access-Control-Allow-Origin' ヘッダーが存在しません。 /localhost: 63342' はアクセスを許可されていません

これは、ブラウザがクロスドメインにアクセスできないためです。サーバー側でリクエストされるファイルを見つけます: このようにヘッダーを設定します


。 、データは正常に返されましたか?しかし! ! ! 、失敗しました、めまいがします、その理由は、この php はヘッダーを呼び出す前に出力を持つことができず、ROM 形式ではなくエンコードを UTF-8 に変更する必要があるためです。私はこの時点で一晩中行き詰まってしまいました。 ! !

上記は、cocos2d-js のクロスドメイン アクセスの問題を、内容の側面も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート