Quick Cocos2dx Http通讯

服务端:Python

通讯协议:Http
参考文章:
1 用python实现一个基本的http server服务器 http://blog.sina.com.cn/s/blog_416e30630100gjyk.html
2 http://stackoverflow.com/questions/8470414/strange-jquery-error-code-501-message-unsupported-method-options
 
由于是照着刀塔传奇的思路来做的,刀塔传奇是无需进行常连接的,所以使用Http作为通讯协议。
 
Python服务端在网上找的,代码如下:
技术分享
 
在Eclipse中按下F11,就可以在控制台看到服务启动:
技术分享
 
Quick Cocos2dx中,完全是照着network.lua文件中的createHTTPRequest的例子说明写的,新建了一个类,如下:
技术分享
 
 
然后在MyApp中增加其引用并提供接口,当作单例来用:
技术分享
 技术分享
 
技术分享
 
之后,为了测试是否可用,在MainScene.onEnter方法里头加了测试代码,如下:
技术分享
 
刷新Player,然后就会看到服务端有反应了:
技术分享
 
客户端也报错了:
技术分享
 
至此,通讯测试初步成功,虽然报错了。
 
服务器的问题,搜索了一下,是自己的代码写的有问题,新改的代码如下:
技术分享 
 
重新连接测试的时候,就会看到控制台里头没有报错了。
200代表的是返回成功。
技术分享
 
现在,只剩下客户端还在报错了。
 
客户端问题也已经解决,将回调方法改为本地方法就可以了:
技术分享
 
现在,客户端不会报错,但是收到的信息还是有问题的:
技术分享

仔细观察了一下,发现了最下面一个的log信息是completed,所以应该是自己的笔误所致,修改了一下,回调函数的最终代码如下:
技术分享
 
然后再次刷新,赫然可以看到服务端返回的文本:
技术分享
 
后续研究一下使用JSON序列化对象,并且用AES或者BASE64之类的文本加密。
此文完结。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。