2

私はこれで終わりです。リモートFTPサーバーにディレクトリが存在するかどうかを確認する必要があります。これが私が考えていることです:

//ls - lists the names of the files in the remote directory
string query = "ls /public_html/somefolder/";

//prepare to send
headers = curl_slist_append(headers, query.c_str());
curl_easy_setopt(curl, CURLOPT_QUOTE, headers); 

//send query to ftp server
res = curl_easy_perform(curl);

//check result
if(res == CURLE_OK) {
    cout << "FOLDER EXISTS";
} else {
    cout << "FOLDER DOESN'T EXIST";
}

res変数に何が含まれているかを確認すると、次のように出力されます。

CURLE_QUOTE_ERROR(21)。

これを正しく行う方法についてのアイデアはありますか?私はグーグルをたくさん検索しました。

4

1 に答える 1

3

これに使用しようとしないでくださいCURLOPT_QUOTE。ALISTはデータ転送なので、 の一部として扱われCURLOPT_URLます。

CURL *curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, "ftp://ftp@ftp.gnu.org/pub/");
curl_easy_setopt(curl, CURLOPT_NOBODY, 1L);
CURLcode res = curl_easy_perform(curl);
if(res == CURLE_OK) std::cout << "FOLDER EXISTS\n";
else std::cout << "FOLDER DOESN'T EXIST\n";
于 2012-08-21T07:02:35.063 に答える