请教一个curl的问题
答案:2 悬赏:40 手机版
解决时间 2021-04-04 19:57
- 提问者网友:原来太熟悉了会陌生
- 2021-04-04 03:18
请教一个curl的问题
最佳答案
- 五星知识达人网友:往事隔山水
- 2021-04-04 04:32
下面是线程函数体。
去掉了一些无关的东西,大体结构是这样的。trace文件里有curlErrFlag = 0, 但是没有resultCode = 的信息,说明是curl_easy_perform( )出的错。而且负责通信的另一端的人说,命令是传送过去并执行了的。
大牛们看看?
void slccorCurl_c::PerformCurl(const char* url,string userpwd, string xmlbuffer , string protocol )
{
try
{
CPFDEF::TraceBuffer_c trace;
trace.SetPacketLevel( 5 );
struct memoryStruct response;
response.memory=NULL;
response.size = 0;
curl_global_init(CURL_GLOBAL_ALL);
CURL *c = curl_easy_init();
if( ! c ) {
CPFDEF::Error_c err(SLCCOR_CURL_INIT_EXCEPTION,
"Error during curl initialisation");
err.SetLocation(__FILE__, __LINE__);
CPFCEC::ErrorLog_c::Send( err );
}
int curlErrFlag = 0;
if (( curl_easy_setopt(c, CURLOPT_URL, url)) != CURLE_OK ) curlErrFlag = 1;
//...a lot of curl_easy_setopt calling
if (( curl_easy_setopt(c, CURLOPT_SSL_VERIFYHOST, 0))!= CURLE_OK ) curlErrFlag = 1;
trace << " curlErrFlag = " << curlErrFlag << endl << flush ;
if ( curlErrFlag == 1 )
{
result = SLCCOR_CURL_ERROR;
}
else
{
CURLcode resultCode = curl_easy_perform( c );
trace << " resultCode = " << resultCode << endl << flush ;
if ( resultCode == CURLE_COULDNT_CONNECT || resultCode == CURLE_COULDNT_RESOLVE_HOST )
{
result = SLCCOR_NO_NE_CONNECT ;
}
if(response.memory)
{
xmlResponse = response.memory;
}
free (response.memory);
curl_easy_cleanup( c );
}
}
catch (...) {
//...
}
}
去掉了一些无关的东西,大体结构是这样的。trace文件里有curlErrFlag = 0, 但是没有resultCode = 的信息,说明是curl_easy_perform( )出的错。而且负责通信的另一端的人说,命令是传送过去并执行了的。
大牛们看看?
void slccorCurl_c::PerformCurl(const char* url,string userpwd, string xmlbuffer , string protocol )
{
try
{
CPFDEF::TraceBuffer_c trace;
trace.SetPacketLevel( 5 );
struct memoryStruct response;
response.memory=NULL;
response.size = 0;
curl_global_init(CURL_GLOBAL_ALL);
CURL *c = curl_easy_init();
if( ! c ) {
CPFDEF::Error_c err(SLCCOR_CURL_INIT_EXCEPTION,
"Error during curl initialisation");
err.SetLocation(__FILE__, __LINE__);
CPFCEC::ErrorLog_c::Send( err );
}
int curlErrFlag = 0;
if (( curl_easy_setopt(c, CURLOPT_URL, url)) != CURLE_OK ) curlErrFlag = 1;
//...a lot of curl_easy_setopt calling
if (( curl_easy_setopt(c, CURLOPT_SSL_VERIFYHOST, 0))!= CURLE_OK ) curlErrFlag = 1;
trace << " curlErrFlag = " << curlErrFlag << endl << flush ;
if ( curlErrFlag == 1 )
{
result = SLCCOR_CURL_ERROR;
}
else
{
CURLcode resultCode = curl_easy_perform( c );
trace << " resultCode = " << resultCode << endl << flush ;
if ( resultCode == CURLE_COULDNT_CONNECT || resultCode == CURLE_COULDNT_RESOLVE_HOST )
{
result = SLCCOR_NO_NE_CONNECT ;
}
if(response.memory)
{
xmlResponse = response.memory;
}
free (response.memory);
curl_easy_cleanup( c );
}
}
catch (...) {
//...
}
}
全部回答
- 1楼网友:荒野風
- 2021-04-04 05:41
解决方法。
/tmp/cc1ounoj.o: in function `main':
displayimage.cpp:(.text+0x6c): undefined reference to `cv::imread(std::basic_string, std::allocator > const&, int)'
displayimage.cpp:(.text+0x10c): undefined reference to `cv::namedwindow(std::basic_string, std::allocator > const&, int)'
displayimage.cpp:(.text+0x13a): undefined reference to `cv::_inputarray::_inputarray(cv::mat const&)'
displayimage.cpp:(.text+0x16e): undefined reference to `cv::imshow(std::basic_string, std::allocator > const&, cv::_inputarray const&)'
displayimage.cpp:(.text+0x190): undefined reference to `cv::waitkey(int)'
/tmp/cc1ounoj.o: in function `cv::mat::~mat()':
displayimage.cpp:(.text._zn2cv3matd2ev[_zn2cv3matd5ev]+0x39): undefined reference to `cv::fastfree(void*)'
/tmp/cc1ounoj.o: in function `cv::mat::operator=(cv::mat const&)':
displayimage.cpp:(.text._zn2cv3mataserks0_[cv::mat::operator=(cv::mat const&)]+0x
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯