Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ libcurl在ubuntu虚拟机上工作得很好,但无法在windows上解析主机_C++_C_Ubuntu_Libcurl - Fatal编程技术网

C++ libcurl在ubuntu虚拟机上工作得很好,但无法在windows上解析主机

C++ libcurl在ubuntu虚拟机上工作得很好,但无法在windows上解析主机,c++,c,ubuntu,libcurl,C++,C,Ubuntu,Libcurl,在windows visual studio 2013中,curl\u easy\u perform返回无法解析主机,但同一台pc中的相同代码在ubuntu虚拟机中运行良好,这是怎么回事 CURL *curl; curl_global_init(CURL_GLOBAL_SSL); curl = curl_easy_init(); curl_easy_setopt(curl, CURLOPT_HEADER, 1); curl_easy_setopt(curl, CURLOPT_VERBOSE, 1

在windows visual studio 2013中,curl\u easy\u perform返回无法解析主机,但同一台pc中的相同代码在ubuntu虚拟机中运行良好,这是怎么回事

CURL *curl;
curl_global_init(CURL_GLOBAL_SSL);
curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_HEADER, 1);
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1);
curl_easy_setopt(curl, CURLOPT_URL, "https://myhost.com/api/login/");
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
// calculate request header
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "{\"username\":\"name\", \"password\":\"test\"}" );
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback); // set callback

curl_easy_perform(curl); // perform request
curl_easy_cleanup(curl); // cleanup request
return 0;
下面是程序的详细输出

>*状态:INIT=>connecthandle0x907ef0;线路1034连接-5000 >*添加了连接0。缓存现在包含1个成员 >*状态:CONNECT=>WAITRESOLVE句柄0x907ef0;线路1071连接0 >*无法解析主机:myhost.com >*正在关闭连接0 >*缓存现在包含0个成员 >*过期已清除
所以我找到了解决办法。 问题出在curl_global_initCURL_global_SSL中;函数调用。
当我把它改为curl\u global\u initCURL\u global\u ALL;程序按预期开始工作。

Ubuntu机器上的主机文件中是否有myhost.com?另外,请确保Windows计算机可以在curl之外解析您的主机,即使用ping。您是否尝试了其他url?没有myhost.com在我的计算机之外,我尝试过其他主机google.com,example.com。。。ping可以解析myhost.com您的curl安装是否包含SSL支持?是的,它包含SSL支持