使用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; }