Мне нужно загрузить каталоги на FTP-сервер в моем приложении и планировать используйте libcurl. Я вижу, что нет прямого способа загрузить каталог со многими файлов, что имеет смысл для меня. Однако я не мог найти упоминания о загружая много файлов.
Если я получу список файлов в каталоге, я могу загрузить их в цикле.
Опция CURLOPT_FTP_CREATE_MISSING_DIRS
может помочь с подкаталогами,
но если бы я хотел бы знать, если я пропущу здесь пункт, или это было бы
любой серьезный недостаток.
Основной вопрос: как я могу сохранить соединение "открытым"? Повторное подключение каждый файл, вероятно, означает дополнительные нежелательные служебные данные.
В идеале я бы хотел использовать простой интерфейс. Но если другой интерфейс обеспечивает лучшую поддержку в этом случае, я буду использовать его.
CURLcode ret;
CURL *handle = curl_easy_init();
/* Connect to FTP server using *
* the given username and password */
for ({each file}) {
curl_easy_setopt(handle, ..., ...);
...
ret = curl_easy_perform(handle);
/* Analyse return code */
curl_easy_reset(handle);
}
/* Disconnect from server */
curl_easy_clenup(handle);