前面我们用php搭建了服务器,下面我们新建cocos2dx项目。然后编译成功后进行改写。
cocos2dx 使用curl库与php服务端通信
代码示例:链接: https://pan.baidu.com/s/1ge92ydH 密码: yj7j
注释掉helloworld图片的加载。把helloworld的label内容改成“cocos2dx curl php”,启动下看下效果。
能正常运行,下面我们修改HelloWorldScene.cpp文件里的void HelloWorld::menuCloseCallback(Ref* pSender)方法,注释掉退出按钮的功能。
下面我们就把通信部分写在这个按钮的回调方法里,通过点击按钮触发通信。
这里我们用的是cocos2dx 的 curl库,首先在HelloWorldScene.h里添加头文件,和库引用。#include "curl/include/win32/curl/curl.h"
#pragma comment ( lib, "libcurl_imp.lib" )
#pragma comment ( lib, "ws2_32.lib" )
#pragma comment ( lib, "wldap32.lib" )
然后我们才能正确的使用CURL库。
1、curl初始化
2、网络连接初始化
3、设定数据接收方法
4、设定数据接收变量
5、发起联网请求
6、处理结果,根据网络连接返回的结果实现跳转和提示
正确的curl使用流程就是这6步。
下面我贴代码示例:
returnData是我们的回调函数。
我们在HelloWorldScene.h头文件新加一个方法,并实现。
下面我们运行下看看效果,点击按钮。测试下看看能不能打印出来log数据。
如图,这里成功的输出了数据,是不是和php返回的数据是一样的啊。
下面我们开始解析这个json数据,看看怎么使用服务器返回的数据。