`
modabobo
  • 浏览: 509385 次
文章分类
社区版块
存档分类
最新评论

【Cocos2d-x游戏引擎开发笔记(24)】CURL实现get和post联网

 
阅读更多

原创文章,转载请注明出处:http://blog.csdn.net/zhy_cheng/article/details/9124275

CURL是cocos2d-x推荐使用的联网方法,这种联网的方法可以跨平台。

1.环境搭建

在链接器---->输入------>附加依赖项中,添加libcurl_imp.lib,如下图:


2.实现get请求:

void HelloWorld::useGet()
{
	CURL *curl;
	CURLcode res;
	
	curl=curl_easy_init();
	if(curl)
	{
		curl_easy_setopt(curl,CURLOPT_URL,"http://localhost/GameServer/servlet/getallmail?account=zhycheng");
		curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION,writehtml);
		res=curl_easy_perform(curl);
		if(res!=CURLE_OK)
		{
			CCLog("联网超时 %i",res);
		}
		
		curl_easy_cleanup(curl);
	}
	else
	{
		CCLog("curl is null");
		return ;
	}
}

这里得代码不难,看看函数名就知道意思了,curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION,writehtml);这个是联网后处理数据的函数,在头文件中的声明如下:
static size_t writehtml(uint8_t* ptr,size_t size,size_t nmemb,void *stream);
在源文件中的实现如下:
size_t HelloWorld::writehtml(uint8_t* ptr,size_t size,size_t number,void *stream)
{

	CCLog("%s",ptr);
	return size*number;//这里一定要返回实际返回的字节数
}

这里打印出从服务器返回的数据。

2.实现post请求

post请求可以比get请求发送更多的信息
void HelloWorld::usePost()
{
	CURL *curl;
	CURLcode res;
	std::string cc;
	curl=curl_easy_init();
	if(curl)
	{
        curl_easy_setopt( curl, CURLOPT_URL, "http://localhost/GameServer/servlet/getallmail"); //请求的地址
		curl_easy_setopt(curl, CURLOPT_POST, true);                     //启用POST提交 
		curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "account=zhycheng"); //发送的数据
		curl_easy_setopt( curl, CURLOPT_FOLLOWLOCATION, 1L); 
		curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION,writehtml); //处理的函数
		curl_easy_setopt( curl, CURLOPT_WRITEDATA, &cc);        //缓冲的内存
		res=curl_easy_perform(curl);
		if(res!=CURLE_OK)
		{
			CCLog("联网超时 %i",res);
		}
		
	
		curl_easy_cleanup(curl);
	}
	else
	{
		CCLog("curl is null");
		return ;
	}
}

这里没什么难的,我就直接上代码了。


分享到:
评论

相关推荐

    大富翁手机游戏开发实战基于Cocos2d-x3.2引擎

    资源名称:大富翁手机游戏开发实战基于Cocos2d-x3.2引擎内容简介:李德国编著的《大富翁手机游戏开发实战(基于 Cocos2d-x3.2引擎)》使用Cocos2d-x游戏引擎技术,带领读者一步一步从零开始进行大富翁移动游戏的开发...

    Cocos2D-X游戏开发技术精解

    资源名称:Cocos2D-X游戏开发技术精解内容简介:Cocos2D-X是一款支持多平台的 2D手机游戏引擎,支持iOS、Android、BlackBerry等众多平台。当前,很多移动平台流行的游戏,都是基于Cocos2D-X开发的。 《Cocos2D-X...

    Cocos2D-X游戏开发技术精解.pdf

    《Cocos2D-X游戏开发技术精解》详细介绍如何使用Cocos2D-X引擎开发自己的移动平台游戏。全书共15章,主要内容包括:Cocos2D-X引擎简介;如何建立跨平台的开发环境;引擎的核心模块——渲染框架;如何实现动态画面和...

    Cocos2d-x实战:JS卷——Cocos2d-JS开发

    资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...

    大富翁手机游戏开发实战 基于Cocos2d-x3.2引擎

    李德国编著的《大富翁手机游戏开发实战(基于 Cocos2d-x3.2引擎)》使用Cocos2d-x游戏引擎技术,带领... 本书适合Cocos2d-x引擎游戏开发初学者、游戏设计人员,也适合作为高等院校和培训学校相关专业师生的教学参考。

    精通COCOS2D-X游戏开发 基础卷_2016.4-P399-13961841.pdf

    精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发

    Cocos2d-x游戏引擎实战开发炸弹超人

    Cocos2d-x 是一个支持多平台的 2D 手机游戏引擎

    【Cocos2d-x游戏引擎开发笔记(17)】实现运动的尾巴效果

    【Cocos2d-x游戏引擎开发笔记(17)】实现运动的尾巴效果

    【Cocos2d-x游戏引擎开发笔记(13)】Tiled Map Editor(一)

    【Cocos2d-x游戏引擎开发笔记(13)】Tiled Map Editor(一)

    精通Cocos2d-x游戏开发(进阶卷)源代码

    精通Cocos2d-x游戏开发(进阶卷)源代码 精通Cocos2d-x游戏开发(进阶卷)源代码 精通Cocos2d-x游戏开发(进阶卷)源代码

    【Cocos2d-x游戏引擎开发笔记(13)】Tiled Map Editor(二)

    Cocos2d-x【Cocos2d-x游戏引擎开发笔记(13)】Tiled Map Editor(二)

    Cocos2d-x高级开发教程

    Cocos2d-x是移动跨平台开发最流行的游戏引擎,而本书是一本很全面的、比较‘接地气’的游戏开发教程。书中汇聚了热门手机游戏《捕鱼达人》开发的实战经验,作者从最基础的内容开始,逐步深入地介绍了Cocos2d-x的相关...

    cocos2d-x游戏开发实战精解

    本光盘是《Cocos2d-x游戏开发实战精解》一书的配书光盘,内容介绍如下。 (1)本书教学视频:该文件夹收录了本书的配套多媒体教学视频,可用暴风影音等视频播放器播放。 (2)本书源文件:该文件夹收录了本书涉及...

    Cocos2d-x-3.x游戏开发之旅

    Cocos2d-x-3.x游戏开发之旅-钟迪龙著 全新pdf版和附书代码(代码为工程文件,可复制) 附带目录标签

    Cocos2d-x 3.x游戏开发实战pdf含目录

    Cocos2d-x 3.x游戏开发实战pdf含目录,内容详细,强烈推荐给大家。

    Cocos2d-x游戏编程——C++篇 .iso

    Cocos2d-x游戏编程——C++篇(电子工业出版社,徐飞 著)书本配套的光盘代码,

    cocos2d-x-2.1.5

    cocos2d-x-2.1.5

    实例妙解Cocos2D-X游戏开发

    一线资深游戏开发工程师根据Cocos2D-X 最新版本撰写,Cocos2D...完全通过真实游戏案例驱动,不仅将Cocos2D-X的各种功能、原理、技巧融入其中,而且还详细讲解了空战类、塔防类、物理类游戏的开发过程和方法,实战性极强

    cocos2d-x事件类

    在使用cocos2d-x开发游戏的过程中,为了实现逻辑和显示相分离。 在下通宵了一个晚上,写出了该事件类。 谨记,该事件只能用于cocos2d-x中。 事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类...

    cocos2d-x-3.2旧版引擎下载

    cocos2d-x-3.2下载,不多说。或者可以下载另一个资源 cocos引擎老版本集合(cocos2d-x-2.2.1 - 3.5) http://download.csdn.net/download/crazymagicdc/9982656

Global site tag (gtag.js) - Google Analytics