cocos2dx通过url获取微信头像

通过url获取图片,通常用于获取微信头像

ImageView* imageView = ImageView::create();


imageView->loadTextureFromURL(buffer2,buffer1 );

imageView->setPosition(Vec2(298,LayoutSize.height - 75));

imageView->setScale(0.26);

addChild(imageView);




void ImageView::loadTextureFromURL(const char* key,const char* url)


{
   
std::string path = FileUtils::getInstance()->getWritablePath();
//    path+="cache/";
    
path+=key;
    
if(FileUtils::getInstance()->isFileExist(path))
{
        
loadTexture(path);
    
}
else
{
        
network::HttpRequest* request = new (std::nothrow) network::HttpRequest();


        
request->setUrl(url);
        
request->setRequestType(network::HttpRequest::Type::GET);

        request->setResponseCallback([this,path](network::HttpClient* client, network::HttpResponse* response)
{
            
if (!response->isSucceed())

            {
                
CCLOG("Receive Error! %s\n",response->getErrorBuffer());
                
return ;
            
}
            
std::vector<char> *buffer = response->getResponseData();

        CCLOG("path: %s",path.c_str());
            
std::string bufffff(buffer->begin(),buffer->end());
            
FILE *fp = fopen(path.c_str(), "wb+");
            
fwrite(bufffff.c_str(), 1,buffer->size(),fp);
            
fclose(fp);
            
loadTexture(path);
        
});
        
network::HttpClient::getInstance()->sendImmediate(request);
        
        
request->release();
        
        
   
}


}

猜你喜欢

转载自blog.csdn.net/u014206831/article/details/78470817