对于c ++还是很新的,因此,对于我可能犯的任何严重错误,我们深表歉意。
我具有发布功能,可用于将数据发送到网站,然后将其他数据返回给我。问题是它在curl_easy_perform超时这是我的消息来源。不久前它开始工作,但是由于某种奇怪的原因而停止了。我可以向您保证,它不是我尝试过的其他网站。
size_t WriteCallback(char *contents, size_t size, size_t nmemb, void *userp)
{
((std::string*)userp)->append((char*)contents, size * nmemb);
return size * nmemb;
}
string post(string source) {
CURL *curl;
CURLcode res;
string readBuffer;
curl_global_init(CURL_GLOBAL_ALL);
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, "mywebsite");
curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, source.length());
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, source.c_str());
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer);
res = curl_easy_perform(curl);
cout << res << endl;
curl_easy_cleanup(curl);
return readBuffer;
}
curl_global_cleanup();
return 0;
}
已解决。原来我初始化控制台和主要功能的方式有误,我不太了解。还是谢谢!