我正在尝试使用libcurl将来自任意(用户指定的)网址的数据传输到我的应用程序:
curl_easy_recv
来检索数据块来设置管道。 但是我不明白如何将两者结合起来。似乎curl_easy_recv
仅在以下情况下有效:
/* Do not do the transfer - only connect to host */
curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, 1L);
设置此选项时curl_easy_perform
不检索任何数据,它只是连接。在该示例中,应用程序通过使用curl_easy_send
手动发送http命令来继续。但是,我只想检索URL中指定的数据,而无需编写手动的http或ftp命令。
有没有办法将curl_easy_recv
或类似内容与curl_easy_perform
的默认行为结合使用,自动检索网址中指定的内容?
答案 0 :(得分:0)
首先,如果您没有执行libcurl已经支持的协议之一,curl_easy_send和curl_easy_recv实际上只是意味着使用,因此在大多数情况下它们不是正确的答案。这听起来并不像你需要它们。
curl_easy_perform()会传输给定的网址,并在数据到达后立即调用CURLOPT_WRITEFUNCTION,然后您可以使用该数据或将其发送到您选择的地方。这还不够吗?