WebClient изтегля повредени файлове

Опитвам се да изтегля файл Graph.zip от определен URL адрес: https://www.dropbox.com/s/erc6ke9k1x2nle0/Graph.zip Използвайки този код:

WebClient webClient = new WebClient();
webClient.DownloadFile("https://www.dropbox.com/s/erc6ke9k1x2nle0/Graph.zip",
                        @"Graph.zip");

Всеки път, когато изпълнявам кода, той или е повреден и/или е с размер 0 байта. Правя ли нещо нередно?


person Frikha Ahmad    schedule 28.12.2020    source източник


Отговори (1)


Опитайте да отворите URL адреса от браузъра си: https://www.dropbox.com/s/erc6ke9k1x2nle0/Graph.zip

Ще забележите, че сте пренасочени към междинна страница. Ако го запишете в разширение на zip файл, тъй като файлът всъщност не е zip, той изглежда повреден на zip клиентите. За да изтеглите dropbox файлове, трябва или да използвате остатъка от API, или sdk.

Вижте примерното конзолно приложение тук за пример: https://www.dropbox.com/developers/documentation/dotnet#tutorial

async Task Download(DropboxClient dbx, string folder, string file)
{
    using (var response = await dbx.Files.DownloadAsync(folder + "/" + file))
    {
        Console.WriteLine(await response.GetContentAsStringAsync());
    }
}
person Athanasios Kataras    schedule 28.12.2020