Utilisation de aws.WriteAtBuffer pour implémenter io.WriterAt pour les téléchargements S3
Lors du téléchargement de fichiers à partir d'un compartiment S3 à l'aide du SDK AWS, vous pouvez rencontrez une exigence pour un objet qui implémente l’interface io.WriterAt. Bytes.Buffer, un tampon en mémoire couramment utilisé, ne dispose pas de cette implémentation. Pour résoudre ce problème, vous pouvez utiliser aws.WriteAtBuffer fourni par le SDK AWS.
Pour utiliser aws.WriteAtBuffer pour les téléchargements S3, suivez ces étapes :
Instancier un aws.WriteAtBuffer pour conserver le fichier téléchargé data :
buf := aws.NewWriteAtBuffer([]byte{})
Configurer la demande de téléchargement S3 :
requestInput := s3.GetObjectInput{ Bucket: aws.String(bucket), Key: aws.String(key), }
Effectuer l'opération de téléchargement à l'aide du téléchargeur S3 :
downloader.Download(buf, &requestInput)
Récupérer les données téléchargées depuis le buffer :
fmt.Printf("Downloaded %v bytes", len(buf.Bytes()))
Avec cette approche, vous pouvez télécharger des objets S3 directement en mémoire sans créer de fichiers temporaires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!