<pre name="code" class="cpp">CCScene* HttpClients::scene()
{
CCScene *scene = CCScene::create();
HttpClients*lay = HttpClients::create();
scene->addChild(lay);
return scene;
}
bool HttpClients::init()
{
CCLayer::init();
#if 0
//静态访问
//初始化
CCHttpRequest *requst = new CCHttpRequest();
requst->setUrl("http://192.168.11:80/test.html");
requst->setResponseCallback(this, httpresponse_selector(HttpClients::responsp));
requst->setRequestType(CCHttpRequest::kHttpGet);
//讲数据发送
CCHttpClient *cline = CCHttpClient::getInstance();
cline->send(requst);
//释放
requst->release();
#endif
//通过Get方式跟服务器交流
CCHttpRequest *request = new CCHttpRequest;
request->setUrl("http://192.168.1.11:80/cgi-bin/user.bin?time=100000&username=fff");
request->setResponseCallback(this, httpresponse_selector(HttpClients::responsp));
request->setRequestType(CCHttpRequest::kHttpGet);
//讲request 发送服务器
CCHttpClient *client = CCHttpClient::getInstance();
client->send(request);
//释放
request->release();
//通过post 方式
CCHttpRequest *request = new CCHttpRequest;
request->setUrl("http://198.168.1.11:80/cig-bin/test/test.bin");
request->setRequestType(CCHttpRequest::kHttpPost);
request->setResponseCallback(this, httpresponse_selector(HttpClients::responsp));
char buf[] = "1231237127312871927498";
request->setRequestData(buf,sizeof(buf));
CCHttpClient *clinet = CCHttpClient::getInstance();
client->send(request);
request->release();
return true;
}
//http 请求 get post
void HttpClients::responsp(CCHttpClient*client, CCHttpResponse*resp)
{
// Request //请求 Response 响应
//如果请求失败 通过resp->getErrorBuffer 去获取货物信息
if (!resp->isSucceed())
{
CCLog("Request faliuse : %s",resp->getErrorBuffer());
return;
}
//获取响应数据
std::vector<char>*data = resp->getResponseData();
std::string str;
std::vector<char>::iterator it;
for (it = data->begin(); it != data->end(); it++)
{
char ch = *it;
str += ch;
}
CCLog("%s", str.c_str());
}
今天练习了一下HTTP操作
最新推荐文章于 2023-03-21 09:38:55 发布