C++;CURL:以不同的方式处理标题和正文数据 我希望编写一个C++程序,将返回的头保存到变量中,并将返回的正文保存到文本文件中。我该怎么做

C++;CURL:以不同的方式处理标题和正文数据 我希望编写一个C++程序,将返回的头保存到变量中,并将返回的正文保存到文本文件中。我该怎么做,c++,curl,overloading,C++,Curl,Overloading,目前,我的方法是重载handleData函数,但编译器返回的错误重载函数没有上下文类型信息。这是我到目前为止所写的(代码摘录): 你应该改用 static size_t handleData(char *ptr, size_t size, size_t nmemb, string *str){ string temp = string(ptr); // catch the cookie if (temp.substr(0,10)=="Set-Cookie"){

目前,我的方法是重载
handleData
函数,但编译器返回的错误
重载函数没有上下文类型信息。这是我到目前为止所写的(代码摘录):

你应该改用

static size_t handleData(char *ptr, size_t size, size_t nmemb, string *str){ 
    string temp = string(ptr);
    // catch the cookie 
    if (temp.substr(0,10)=="Set-Cookie"){
       *str = temp;
    }
    return size * nmemb;
}

static size_t handleData(char *ptr, size_t size, size_t nmemb, FILE *stream){ 
    int written = fwrite(ptr, size, nmemb, stream);
    return written;
}

FILE *bodyfile;
string *return_header = new string;

curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, handleData); 
curl_easy_setopt(curl, CURLOPT_HEADERDATA, return_header);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, bodyfile);
static size_t handleHeader(char *ptr, size_t size, size_t nmemb, string *str){ 
    // ...
}
static size_t handleData(char *ptr, size_t size, size_t nmemb, FILE *stream){ 
    // ...
}

curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, handleHeader);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, handleData); 
curl_easy_setopt(curl, CURLOPT_HEADERDATA, return_header);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, bodyfile);