Télécharger un objet

Téléchargement d'un objet

Les requêtes GET relatives aux objets peuvent inclure un en-tête Range tel que défini dans le document RFC HTTP 1.1 afin de limiter le champ d'application des données renvoyées dans l'objet, mais sachez que dans certaines circonstances, les 101}l'en-tête de plage est ignoré.

Les objets stockés dans Cloud Storage dans un état compressé peuvent être automatiquement décompressés dans le cadre d'une requête de téléchargement lorsque certains critères sont remplis. Grâce à ce transcodage, le demandeur n'a plus besoin de décompresser l'objet.

Les requêtes peuvent également inclure des en-têtes If-Modified-Since ou If-Unmodified-Since, ce qui entraîne la réponse dans le corps si l'objet n'a pas été modifié ou a été modifié, depuis un horodatage spécifié. Si l'objet ne remplit pas une condition d'en-tête If-Modified-Since, la réponse est 304 Not Modified. Si l'objet ne remplit pas une condition d'en-tête If-Unmodified-Since, la réponse est {101 }412 Condition préalable non remplie.

De même, les requêtes peuvent inclure des en-têtes "If-Match" et "If-None-Match" avec un ETag. Si l'objet ne correspond à aucune condition d'en-tête If-Match, la réponse est 412 Precondition Failed. Si l'objet correspond au hachage donné dans un en-tête If-None-Match, la réponse est 304 Not{101. }Modifié.

Consultez le guide Télécharger des objets pour savoir comment télécharger un objet.

Paramètres de la chaîne de requête

Paramètre Description Requis
generation Vous pouvez utiliser cette option pour récupérer une version d'objet spécifique. Non

Pour en savoir plus sur les paramètres à inclure lors de la création et de l'utilisation d'URL signées, consultez la section Paramètres des chaînes de requête d'URL signée.

En-têtes de requête

En plus des en-têtes de requêtes courants, les éléments suivants peuvent être utilisés.

En-tête Description Requis
If-Match Un tag d'entité (ETag). Si l'ETag que vous spécifiez est identique à l'ETag de l'objet, l'objet est téléchargé. Non
If-Modified-Since Date et heure. Si l'objet a été modifié après la date et l'heure que vous avez spécifiées, l'objet est téléchargé. Non
If-None-Match Un tag d'entité (ETag). Si l'ETag que vous spécifiez est différent de l'ETag de l'objet, l'objet est téléchargé. Non
If-Unmodified-Since Date et heure. Si l'objet n'a pas été modifié après la date spécifiée, il est téléchargé. Non
Range Plage d'un objet (en octets) que vous souhaitez télécharger.

Avertissement: La ou les sommes de contrôle renvoyées lors du téléchargement de données à partir de Cloud Storage couvrent l'intégralité du contenu de l'objet. Ainsi, si vous spécifiez une plage de requêtes, il n'existe aucun moyen de détecter seul la corruption des données pour cette plage d'octets. Par conséquent, nous vous recommandons de n'utiliser des requêtes de plage que pour relancer le téléchargement d'un objet complet après le dernier décalage de réception, car vous pouvez alors calculer et valider la somme de contrôle à la fin du téléchargement complet.

Non

Pour télécharger un objet chiffré par une clé de chiffrement fournie par le client, utilisez les en-têtes répertoriés sur la page "Chiffrement" de votre requête.

Éléments du corps de la requête

Cette requête n'inclut pas de document XML dans le corps de la requête.

Syntaxe des requêtes

La syntaxe suivante s'applique aux requêtes d'objet GET qui n'utilisent pas le paramètre de chaîne de requête acl.

GET /OBJECT_NAME HTTP/1.1
Host: BUCKET_NAME.storage.googleapis.com
Content-Length: 0
Authorization: AUTHENTICATION_STRING
Range: bytes=BYTE_RANGE
If-Match: ENTITY_TAG
If-Modified-Since: DATE
If-None-Match: ENTITY_TAG
If-Unmodified-Since: DATE

En-têtes de réponse

La requête peut renvoyer divers en-têtes de réponse en fonction des en-têtes de requête que vous utilisez, par exemple : Cache-Control, Content-Length.Content-Type, Content-Disposition, ETag et Last-Modified

Éléments du corps de la réponse

La réponse contient les données d'objet.

Exemple

L'exemple suivant télécharge un objet nommé "paris.jpg" qui se trouve dans un bucket nommé "travel-maps".

Requête

GET /paris.jpg HTTP/1.1
Host: travel-maps.storage.googleapis.com
Content-Length: 0
Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg

Réponse

HTTP/1.1 200 OK
Content-Type: image/jpg
Last-Modified: Fri, 19 Feb 2010 22:13:49 GMT
ETag: "2281880ef78388266ecd7d4c1b472a0e"
Content-Length: 328
Date: Fri, 19 Feb 2010 22:13:49 GMT

328 bytes of data...