使用libcurl 发送post请求

SendHttpPost(string& strUrl, string& strPost, string& strResponse, int nTimeOut)
{
	CURLcode res;
	CURL* curl = curl_easy_init();
	if(NULL == curl)
	{
		return CURLE_FAILED_INIT;
	}

	if (nTimeOut < 60)
	{
		nTimeOut = 60;
	}

	curl_easy_setopt(curl, CURLOPT_URL, strUrl.c_str());
	curl_easy_setopt(curl, CURLOPT_POST, 1);
	curl_easy_setopt(curl, CURLOPT_POSTFIELDS, strPost.c_str());
	curl_easy_setopt(curl, CURLOPT_READFUNCTION, NULL);
	curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, OnWriteData);
	curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&strResponse);
	curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1);
	curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, nTimeOut);
	curl_easy_setopt(curl, CURLOPT_TIMEOUT, m_nMD5TimeOut);

	res = curl_easy_perform(curl);
	curl_easy_cleanup(curl);

	return res;
}

  

原文地址:https://www.cnblogs.com/nanqiang/p/8491843.html