【cocos2d-js网络教程篇】cocos2d-js http网络请求

【cocos2d-js网络教程篇】cocos2d-js http网络请求,第1张

概述前言 刚入手cocos2d-js,看到网上的JS的http网络请求,大部分都是错的。原因在于,js-tests里面的网络请求实例没有给出加载完成事件。正确的加载完成事件如下: var xhr = cc.loader.getXMLHttpRequest(); xhr.open("POST", url); xhr.setRequestHeader("Content-Ty 前言

刚入手cocos2d-Js,看到网上的Js的http网络请求,大部分都是错的。原因在于,Js-tests里面的网络请求实例没有给出加载完成事件。正确的加载完成事件如下:

var xhr = cc.loader.getXMLhttpRequest();        xhr.open("POST",url);        xhr.setRequestheader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");        xhr["onloadend"] = function(){};

http.Js完整类
var http =  cc.Class.extend({    m_inst : null,//实例    url : "http://127.0.0.1:8080/request.PHP",ctor : function(){    },/*     * 网络请求之GET     * url 请求的网络地址     * callback 回调参数     * */    getWithUrl : function(url,callback){        var xhr = cc.loader.getXMLhttpRequest();        xhr.open("GET",url,true);        xhr["onloadend"] = 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 回调参数    ['loadstart','abort','error','load','loadend','timeout']    * */    senDWithUrl : function(url,params,callback){        var xhr = cc.loader.getXMLhttpRequest();        xhr.open("POST","application/x-www-form-urlencoded;charset=UTF-8");        xhr["onloadend"] = function(){            var sc = -1            if (xhr.readyState == 4 && (xhr.status >= 200 && xhr.status <= 207)) {                sc = 0;            }            var Json = JsON.parse(xhr.responseText)            var rc = parseInt(Json["code"])            callback(sc,rc,Json);            if(sc == 0 && (rc != 0) && RETCODE[rc + ""])            {                Alert.getInst().show(RETCODE[rc + ""])            }            else if(sc != 0 || rc != 0 ){                Alert.getInst().show("sc: " + sc + " rc: " + rc)            }        }       xhr.send(params);    }});//获取实例http.inst = function() {    if (http.m_inst == null) {        http.m_inst = new http();    }    return http.m_inst;};

使用方法
http.inst()->senDWithUrl("http://127.0.0.1:8080/request.PHP","ID=1&ID=2&ID=3",function(sc,response){  cc.log("返回数据" + response);});
有什么不懂的问题或者需要PHP服务端的代码,请在下面留下你的联系方式。 总结

以上是内存溢出为你收集整理的【cocos2d-js网络教程篇】cocos2d-js http网络请求全部内容,希望文章能够帮你解决【cocos2d-js网络教程篇】cocos2d-js http网络请求所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1077990.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存