您的位置:首页 > 理论基础 > 计算机网络

【Cocos2d-x】 HttpClient 网络通信(Http)的简单应用

2014-06-03 13:47 489 查看
Cocos2dx 为我们封装了在cocos2dx中http的网络框架,其文件在cocos2dx引擎包的extensions\network文件下的 HttpClient、HttpRequest 、HttpResponse。

使用CCHttprequest联网有两种方法get和post。get和post都能够从server获取数据,这两种联网的方法有所不同。以下简单的区分一下

1.get提交的时候数据放到URL后面,post放在HTTP协议消息体中。

2.get数据量大小有限制,2KB,post理论上没限制。

3.get的安全性比post差。

可是真正的底层,用的还是cURL库。。。

CURL是cocos2d-x推荐使用的联网方法,这样的联网的方法能够跨平台

1.首先创建一个类,继承自cocos2d-x中的不论什么一个类都能够(有共同父类CCObject),并实现一个SEL_CallFuncND类型成员函数,用来做收到数据后的回调函数,函数原型为void fun(CCNode*, void*)。

2.当我们须要一次http交互的时候,我们须要new 一个CCHttpRequest对象,并设置url和请求方式(get还是post,本文仅仅说一下get的原理,post差别不大,能够自己看),并将上面说函数设置为收到数据后的回调函数。

3.使用CCHttpClient::getInstance()单例对象,将前一步骤的CCHttpRequest对象作为參数,调用send()方法。

4.在回调函数中,将第二个參数转换成CCHttpResponse *类型,就能够通过CCHttpResponse类的方法来获取返回状态和数据等能容了。

具体样例testCpp有具体的代码

參考;
http://blog.csdn.net/zhy_cheng/article/details/9124275 http://blog.csdn.net/duotianshi86/article/details/10216383
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: