Der Download von fortsetzbaren Medien ist seit der Betaversion 1 .4.0 eine Funktion in der.NET-Clientbibliothek der Google API. Die Google API-spezifischen Bibliotheken enthalten praktische Methoden für die Interaktion mit für diese Funktion.
Das Download-Protokoll für fortsetzbare Medien ähnelt dem Upload-Protokoll für fortsetzbare Medien, zum Beispiel auf der Seite zum Hochladen von Medien für die Drive API
Die Hauptklasse der Interessen
MediaDownloader
Bei dieser Implementierung eines fortsetzbaren Mediendownloads werden die Medieninhalte in Blöcken heruntergeladen (die Blockgröße ist konfigurierbar).
Beispielcode
Wenn Methoden in den API-spezifischen Bibliotheken den Parameter „supportsMediaDownload
“ im Discovery-Dokument fest.
dann Download
und DownloadAsync
Convenience-Methoden sind in der Anfrageklasse verfügbar.
Mit diesen Methoden werden die Mediendaten in eine Stream
heruntergeladen.
-Objekt, das Sie zur Verfügung stellen. Beispiel:
{ // Create the service using the client credentials. var storageService = new StorageService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = "APP_NAME_HERE" }); // Get the client request object for the bucket and desired object. var getRequest = storageService.Objects.Get("BUCKET_HERE", "OBJECT_HERE"); using (var fileStream = new System.IO.FileStream( "FILE_PATH_HERE", System.IO.FileMode.Create, System.IO.FileAccess.Write)) { // Add a handler which will be notified on progress changes. // It will notify on each chunk download and when the // download is completed or failed. getRequest.MediaDownloader.ProgressChanged += Download_ProgressChanged; getRequest.Download(fileStream); } } static void Download_ProgressChanged(IDownloadProgress progress) { Console.WriteLine(progress.Status + " " + progress.BytesDownloaded); }