Le téléchargement de fichiers multimédias avec reprise est une fonctionnalité de la bibliothèque cliente .NET de l'API Google depuis la version 1.4.0-beta. Les bibliothèques propres à l'API Google contiennent des méthodes pratiques permettant d'interagir avec cette fonctionnalité.
Le protocole de téléchargement de médias avec reprise est semblable au protocole d'importation de médias avec reprise, est décrite, par exemple, page d'importation de contenu multimédia pour l'API Drive.
La principale catégorie d'intérêt est
MediaDownloader
Dans cette implémentation de téléchargement multimédia avec reprise, le contenu multimédia est téléchargé en fragments (la taille des fragments est configurable).
Exemple de code
Si les méthodes des bibliothèques spécifiques à l'API contiennent le paramètre "supportsMediaDownload
" dans le document de découverte,
puis les champs Download
et DownloadAsync
de méthodes pratiques sont disponibles dans la classe de requête.
Ces méthodes permettent de télécharger les données multimédias dans un Stream
.
que vous fournissez. Exemple :
{ // 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); }