Obtention de fichier

L'opération Get File lit ou télécharge un fichier à partir du système, avec ses métadonnées et propriétés.

Disponibilité du protocole

Protocole de partage de fichiers activé Disponible
SMB Oui
NFS Non

Requête

La demande Get File peut être construite comme indiqué ci-dessous. Nous vous recommandons d’utiliser HTTPS.

Méthode URI de demande Version HTTP
GET https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile HTTP/1.1

Remplacez les composants de chemin d’accès qui sont affichés dans l’URI de requête par le vôtre, comme suit :

Composant Chemin d’accès Description
myaccount nom de votre compte de stockage.
myshare Nom du partage de fichiers.
mydirectorypath facultatif. Chemin au répertoire.
myfile Nom du fichier.

Pour plus d’informations sur les restrictions de nommage de chemin d’accès, consultez Partages de noms et de référence, répertoires, fichiers et métadonnées.

Paramètres URI

Les paramètres supplémentaires suivants peuvent être spécifiés sur l’URI de demande :

Paramètre Description
timeout facultatif. Le paramètre timeout est exprimé en secondes. Pour plus d’informations, consultez Définir des délais d’attente pour les opérations Azure Files.

En-têtes de requête

Les en-têtes de requête obligatoires et facultatifs sont décrits dans le tableau suivant :

En-tête de requête Description
Authorization Obligatoire. Spécifie le schéma d’autorisation, le nom du compte et la signature. Pour plus d’informations, consultez Autoriser les requêtes auprès du Stockage Azure.
Date ou x-ms-date Obligatoire. Spécifie la date/heure en temps universel coordonné (UTC) pour la requête. Pour plus d’informations, consultez Autoriser les requêtes auprès du Stockage Azure.
x-ms-version Obligatoire pour toutes les demandes autorisées. Spécifie la version de l'opération à utiliser pour cette demande. Pour plus d'informations, consultez la page Contrôle de version pour les services de Stockage Microsoft Azure.
Range facultatif. Retourne les données de fichier uniquement à partir de la plage d’octets spécifiée.
x-ms-range facultatif. Retourne les données de fichier uniquement à partir de la plage d’octets spécifiée. Si Range et x-ms-range sont spécifiés, le service utilise la valeur de x-ms-range. Si ni l’un ni l’autre n’est spécifié, le contenu du fichier entier est retourné. Pour plus d’informations, consultez Spécifier l’en-tête de plage pour les opérations de Azure Files.
x-ms-range-get-content-md5: true facultatif. Lorsque cet en-tête est défini true sur et qu’il est spécifié avec l’en-tête Range , le service retourne le hachage MD5 pour la plage, tant que la plage est inférieure ou égale à 4 mebibytes (Mio) en taille.

Si cet en-tête est spécifié sans l'en-tête Range, le service renvoie le code d'état 400 (Demande incorrecte).

Si cet en-tête est défini sur true lorsque la taille de la plage dépasse 4 Mio, le service retourne status code 400 (requête incorrecte).
x-ms-lease-id:<ID> facultatif. Version 2019-02-02 et ultérieures. Si l’en-tête est spécifié, l’opération n’est effectuée que si le bail du fichier est actuellement actif et que l’ID de bail spécifié dans la demande correspond à l’ID de bail du fichier. Sinon, l’opération échoue avec status code 412 (Échec de la condition préalable).
x-ms-client-request-id facultatif. Fournit une valeur opaque générée par le client avec une limite de caractères de 1 kibioctet (Kio) enregistrée dans les journaux lors de la configuration de la journalisation. Nous vous recommandons vivement d’utiliser cet en-tête pour mettre en corrélation les activités côté client avec les demandes reçues par le serveur. Pour plus d’informations, consultez Surveiller Azure Files.
x-ms-file-request-intent Obligatoire si Authorization l’en-tête spécifie un jeton OAuth. La valeur acceptable est backup. Cet en-tête spécifie que le Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action ou Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action doit être accordé s’il est inclus dans la stratégie RBAC affectée à l’identité autorisée à l’aide de l’en-tête Authorization . Disponible pour les versions 2022-11-02 et ultérieures.
x-ms-allow-trailing-dot: { <Boolean> } facultatif. Version 2022-11-02 et ultérieures. La valeur booléenne spécifie si un point de fin présent dans l’URL de la demande doit être rogné ou non. Pour plus d’informations, consultez Nommer et référencer des partages, des répertoires, des fichiers et des métadonnées.

Corps de la demande

Aucun.

response

La réponse comprend un code d'état HTTP, un ensemble d'en-têtes de réponse et le corps de réponse qui contient le contenu du fichier.

Code d’état

Une opération réussie envoie le code d'état 200 (OK).

Pour plus d’informations sur les codes status, consultez Codes d’état et d’erreur.

En-têtes de réponse

La réponse de l'opération inclut les en-têtes suivants. La réponse peut également inclure des en-têtes HTTP standard supplémentaires. Tous les en-têtes standard sont conformes à la spécification du protocole HTTP/1.1.

En-tête de réponse Description
Last-Modified Retourne la date et l’heure de la dernière modification du fichier. Le format de date est conforme à la RFC 1123. Pour plus d’informations, consultez Représenter les valeurs de date/heure dans les en-têtes. Toute opération qui modifie le fichier ou ses propriétés met à jour l’heure de la dernière modification.
x-ms-meta-name:value Ensemble de paires nom-valeur associées à ce fichier en tant que métadonnées définies par l'utilisateur.
Content-Length Le nombre d'octets présents dans le corps de la réponse.
Content-Type Type de contenu spécifié pour le fichier. Le type de contenu par défaut est application/octet-stream.
Content-Range Plage d’octets retournée si le client a demandé un sous-ensemble du fichier en définissant l’en-tête de requête Range .
ETag Contient une valeur que vous pouvez utiliser pour effectuer des opérations conditionnelles. La valeur est placée entre guillemets.
Content-MD5 Si l'objet blob a un hachage MD5 et si la demande est de lire entièrement l'objet blob, cet en-tête de réponse est renvoyé afin que le client puisse vérifier l'intégrité du contenu du message.

Si la demande est de lire une plage spécifiée et que a la x-ms-range-get-content-md5 valeur true, la requête retourne un hachage MD5 pour la plage, tant que la taille de la plage est inférieure ou égale à 4 Mio.

Si aucun de ces ensembles de conditions n’est true, aucune valeur n’est retournée pour l’en-tête Content-MD5 .

Si x-ms-range-get-content-md5 est spécifié sans l’en-tête de plage, le service retourne status code 400 (requête incorrecte).

Si x-ms-range-get-content-md5 est défini sur true lorsque la plage dépasse 4 Mio, le service retourne status code 400 (requête incorrecte).
Content-Encoding Retourne la valeur spécifiée pour l’en-tête de Content-Encoding requête.
Content-Language Retourne la valeur spécifiée pour l’en-tête de Content-Language requête.
Cache-Control Est retourné s’il a été spécifié précédemment pour le fichier.
Content-Disposition Renvoie la valeur spécifiée pour l'en-tête x-ms-content-disposition et indique la manière de traiter la réponse.

Le Content-Disposition champ d’en-tête de réponse fournit des informations supplémentaires sur la façon de traiter la charge utile de réponse, et il peut également être utilisé pour attacher des métadonnées supplémentaires. Par exemple, s’il est défini sur attachment, Content-Disposition indique que l’agent utilisateur ne doit pas afficher la réponse, mais doit afficher une fenêtre Enregistrer sous.
x-ms-request-id Identifie de manière unique la demande qui a été effectuée et peut être utilisée pour résoudre la demande. Pour plus d’informations, consultez Résoudre les problèmes liés aux opérations d’API.
x-ms-version Version de service utilisée pour exécuter la demande.
Accept-Ranges: bytes Indique que le service prend en charge les demandes de contenu partiel de fichier.
Date Date
x-ms-copy-completion-time:<datetime> Version 2015-02-21 et ultérieure. Heure de conclusion de la dernière tentative d’opération copier le fichier où ce fichier était le fichier de destination. Cette valeur peut spécifier l'heure d'une tentative de copie qui s'est terminée, qui a été annulée ou qui a échoué. Cet en-tête n’apparaît pas si une copie est en attente, si ce fichier n’a jamais été la destination d’une opération copier un fichier ou si ce fichier a été modifié après une opération de copie du fichier terminée qui a utilisé définir les propriétés du fichier ou créer un fichier.
x-ms-copy-status-description: <error string> Version 2015-02-21 et ultérieure. Apparaît uniquement en cas d’échecx-ms-copy-status ou en attente. Décrit la cause d’un échec d’opération de copie irrécupérable ou non irrécupérable. Cet en-tête n’apparaît pas si ce fichier n’a jamais été la destination d’une opération copier un fichier, ou si ce fichier a été modifié après une opération de copie de fichier terminée qui a utilisé définir les propriétés du fichier ou créer un fichier.
x-ms-copy-id: <id> Version 2015-02-21 et ultérieure. Identificateur de chaîne de la dernière opération de copie du fichier où ce fichier était le fichier de destination. Cet en-tête n’apparaît pas si le fichier n’a jamais été la destination d’une opération copier un fichier, ou si ce fichier a été modifié après une opération de copie de fichier terminée qui a utilisé Définir les propriétés du fichier ou Créer un fichier.
x-ms-copy-progress: <bytes copied/bytes total> Version 2015-02-21 et ultérieure. Contient le nombre d’octets qui ont été copiés et le nombre total d’octets dans la source lors de la dernière tentative d’opération copier le fichier où ce fichier était le fichier de destination. Peut afficher de 0 au nombre d’octets copiés Content-Length . Cet en-tête n’apparaît pas si ce fichier n’a jamais été la destination d’une opération copier un fichier, ou si ce fichier a été modifié après une opération de copie de fichier terminée qui a utilisé définir les propriétés du fichier ou créer un fichier.
x-ms-copy-source: url Version 2015-02-21 et ultérieure. URL d’une longueur maximale de 2 Ko qui spécifie le fichier source utilisé lors de la dernière tentative d’opération de copie de fichier où ce fichier était le fichier de destination. Cet en-tête n’apparaît pas si ce fichier n’a jamais été la destination dans une opération copier un fichier ou si ce fichier a été modifié après une opération de copie de fichier terminée qui a utilisé Définir les propriétés du fichier ou Créer un fichier.
x-ms-copy-status: <pending ¦ success ¦ aborted ¦ failed> Version 2015-02-21 et ultérieure. État de l’opération de copie identifié par x-ms-copy-id, avec les valeurs suivantes :

- pending: la copie est en cours. Vérifiez x-ms-copy-status-description si des erreurs intermittentes et non irrécupérables entravent la progression de la copie, mais ne provoquent pas d’échec.
- success: la copie a été effectuée avec succès.
- aborted: la copie a été terminée par l’abandon du fichier de copie.
- failed: échec de la copie. Pour des informations sur les défaillances, consultez x-ms-copy-status-description.

Cet en-tête n’apparaît pas si ce fichier n’a jamais été la destination d’une opération Copier un fichier, ou si ce fichier a été modifié après une opération de copie de fichier terminée qui a utilisé Définir les propriétés du fichier ou Créer un fichier.
x-ms-content-md5 À partir de la version 2016-05-31, si le fichier a un hachage MD5 et si la requête contient un en-tête de plage (range ou x-ms-range), cet en-tête de réponse est retourné avec la valeur md5 du fichier entier. Cette valeur peut être égale ou non à la valeur retournée dans l’en-tête Content-MD5 , qui est calculée à partir de la plage demandée.
x-ms-server-encrypted: true/false Version 2017-04-17 et versions ultérieures. La valeur de cet en-tête est définie true sur si les données de fichier et les métadonnées d’application sont entièrement chiffrées à l’aide de l’algorithme spécifié. Si le fichier n’est pas chiffré ou si seules certaines parties des métadonnées du fichier/de l’application sont chiffrées, la valeur est définie sur false.
x-ms-file-permission-key Clé de l’autorisation du fichier.
x-ms-file-attributes Attributs du système de fichiers sur le fichier. Pour plus d’informations, consultez la liste des attributs disponibles.
x-ms-file-creation-time Valeur utc date/heure qui représente la propriété d’heure de création du fichier.
x-ms-file-last-write-time Valeur de date/heure UTC qui représente la propriété d’heure de la dernière écriture pour le fichier.
x-ms-file-change-time Date/heure UTC qui représente la propriété d’heure de modification du fichier.
x-ms-file-file-id ID de fichier du fichier.
x-ms-file-parent-id ID de fichier parent du fichier.
x-ms-lease-duration:infinite Version 2019-02-02 et ultérieures. Lorsqu’un fichier est loué, spécifie que le bail est d’une durée infinie.
x-ms-lease-state: <available, leased, broken> Version 2019-02-02 et ultérieures. Lorsqu’un fichier est loué, spécifie l’état du bail du fichier.
x-ms-lease-status: <locked, unlocked> Version 2019-02-02 et ultérieures. Lorsqu’un fichier est loué, spécifie le status de bail du fichier.
x-ms-client-request-id Peut être utilisé pour résoudre les demandes et leurs réponses correspondantes. La valeur de cet en-tête est égale à la valeur de l’en-tête x-ms-client-request-id s’il est présent dans la requête et que la valeur ne contient pas plus de 1 024 caractères ASCII visibles. Si l’en-tête x-ms-client-request-id n’est pas présent dans la demande, il n’est pas présent dans la réponse.

Response body

Le corps de la réponse contient le contenu du fichier.

Exemple de réponse

Response Status:
HTTP/1.1 200 OK

Response Headers:
x-ms-type: File
x-ms-meta-m1: v1
x-ms-meta-m2: v2
Content-Length: 11
Content-Type: text/plain; charset=UTF-8
Date: <date>
ETag: "0x8CB171DBEAD6A6B"
Last-Modified: <date>
x-ms-version: 2019-02-02
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
x-ms-copy-id: 36650d67-05c9-4a24-9a7d-a2213e53caf6
x-ms-copy-source: <url>
x-ms-copy-status: success
x-ms-copy-progress: 11/11
x-ms-copy-completion-time: <date>
x-ms-lease-duration: infinite
x-ms-lease-state: leased
x-ms-lease-status: locked

Autorisation

Seul le propriétaire du compte peut appeler cette opération.

Remarques

L’appel Get File d’une plage qui n’a pas encore de contenu ou qui a été effacé retourne 0 pour ces octets.

Si vous appelez Get File sans plage spécifiée, le service retourne la plage d’octets jusqu’à la valeur spécifiée pour l’en-tête x-ms-content-length . Pour toutes les plages qui manquent de contenu, le service retourne 0 pour ces octets.

Une Get File opération est autorisée deux minutes par Mio. Les opérations qui prennent plus de deux minutes par Mio en moyenne expirent.

Voir aussi

Opérations sur Azure Files