在按下回车之前,Curl 不处理第二个请求 C++

Curl not handling second request c++ until enter is pressed

我有一个简单的 c++ 应用程序,其中 qr 扫描仪从扫描仪读取代码,与 curl 一起使用来处理 url,它在第一次扫描时效果很好,但是当尝试第二次扫描时,curl 不处理 url。直到按下键盘上的回车键,这是行不通的。任何建议将不胜感激。

void sendurl(string s){
   curl_global_init( CURL_GLOBAL_ALL );
   CURL * myHandle;
   CURLcode result;
   myHandle = curl_easy_init ( ) ;
   curl_easy_setopt(myHandle, CURLOPT_URL, s.c_str());
   result = curl_easy_perform( myHandle );
   curl_easy_cleanup( myHandle );
   content();

}


void content() {
   cout << "Please Enter QR Code";
   string mystr;
   getline (cin,mystr);
   while (mystr != "exit"){
       sendurl(mystr);
}
   }


int main () {
   content();
   return 0;
}

我想这就是你想要的

检查您的代码与此代码之间的差异。

void sendurl(string s){
   curl_global_init( CURL_GLOBAL_ALL );
   CURL * myHandle;
   CURLcode result;
   myHandle = curl_easy_init ( ) ;
   curl_easy_setopt(myHandle, CURLOPT_URL, s.c_str());
   result = curl_easy_perform( myHandle );
   curl_easy_cleanup( myHandle );
}


void content() {
   string mystr;
   while (mystr != "exit"){
     cout << "Please Enter QR Code";
     getline (cin,mystr);
     sendurl(mystr);
  }
}


int main () {
   content();
   return 0;
}