我正在构建一个小型应用程序,需要向 API 发出请求。
我使用 libcurl,如果我直接在函数内提供完整的 URL,它会很好用,但如果我在函数内部使用 URL 作为参数,它会立即失败并出现错误 CURLE_COULDNT_RESOLVE_HOST(6)。
所以我知道这不是 DNS 问题,因为如果我直接提供 URL 就可以解决它。
这是我当前的功能。
std::string winget(std::string url)
{
CURL *curl;
CURLcode res;
std::string readBuffer;
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
return readBuffer;
}
//and I call it like this :
winget("example.org");
Run Code Online (Sandbox Code Playgroud)
基本上,如果我直接用“example.org”替换函数中的 url 参数,它就可以工作。所以我真的不知道该怎么办。
预先非常感谢。:)
| 归档时间: |
|
| 查看次数: |
1241 次 |
| 最近记录: |