Xcode如何请求网络并从网络上获得资源
来源:互联网 发布:微群控营销软件 编辑:程序博客网 时间:2024/06/03 23:41
首先,需要添加cocos中的 curl文件,添加方式跟添加资源一样,当然这个是.h文件
cocos2d/external/curl/include/mac/curl // 引入资源文件
#include "curl.h" // 需要引入这个文件
//数据接收方法
// 这里的stream不能是String定义的,似乎cocos自带的String并没有append函数
size_t MyServerTest::proData(char *ptr ,size_t size , size_t num_Mem ,std::string* str){
if(str ==NULL)
return 0;
size_t s;
s = size*num_Mem;
// 在这里把 ptr的前s个字符赋值给 stream,应该就是下面的receive
str->append(ptr,s);
return s;
}
void MyServerTest::menuCallBack(){
// 创建一个curl对象
CURL* curl =curl_easy_init();
int res;
std::string receive;
char url[30] ="192.168.0.107/helpGame.jpg"; // 这个url 是我电脑 资源库/webserver/document内的图片
res = curl_easy_setopt( curl ,CURLOPT_URL , url );
// 这里的功能函数返回的事宜个 size_t类型的数据,传入的应该是个指针,所以加上了取地址符
curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION , &MyServerTest::proData);
// 这里的receive也是取的地址,似乎cocos里数据类型都是传得指针
curl_easy_setopt(curl,CURLOPT_WRITEDATA , &receive);
res = curl_easy_perform(curl); // 表演的时候,也就是呼叫网络
if(CURLE_OK == res){
CCLOG("网络连接成功");
CCLOG("%s",receive.c_str());
auto img =new Image(); // 定义一个img对象
img->autorelease(); // 生成该对象
unsignedchar* data = (unsignedchar *)receive.c_str(); // 将从网络返回的数据转化成无符号类型的char*数据
img->initWithImageData(data, receive.length()); // 载入图片资源,应该是在这里把网络返回的数据流转化的。
auto texture =TextureCache::getInstance()->addImage(img,"helpGame.jpg");
auto sp =Sprite::createWithTexture(texture);
sp->setPosition(320,480);
this->addChild(sp);
}
curl_easy_cleanup(curl);
}
- Xcode如何请求网络并从网络上获得资源
- 从网络上获得图片
- android从网络中获得一张图片,并显示在屏幕上
- android从网络中获得一张图片,并显示在屏幕上
- 网络请求并展示到ListView上
- 根据url从网络上下载资源
- 常见从网络上请求数据流程
- 如何使用xstream解析网络上请求的xml文件,解析并展示
- Xcode 7 网络请求问题
- UIImage如何从网络上获取图片
- 从网络请求数据
- 自定义线程从网络获取图片资源并保存本地文件
- ipv6上ipv4网络并高速下载网盘资源
- Retrofit2 + RxJava 请求网络图片 并设置到ImageView上
- 如何通过URL获得网络上的图片
- 从网络上请求数据,在本地List View配置
- Lua 如何请求网络
- 从网络上进行下载图片,并保存到本地
- LightOJ - 1017 Brush (III)
- 编写内核模块输出代码段的地址空间
- Android中显示GIF动画
- LeetCode 102: Binary Tree Level Order Traversal
- hdu2609How many 最小表示法
- Xcode如何请求网络并从网络上获得资源
- HDU 3074 Multiply game
- C++从零实现BP神经网络
- 返回值修改input值 jquery
- HDU-1029 Ignatius and the Princess IV
- 适配器设计模式
- LightOJ - 1018 Brush (IV)(状态压缩DP)
- 月薪3万的程序员都避开了哪些坑
- hdu 4623 Crime(等价类+变进制哈希+状压dp)