Path - Lease

Chemin du bail
Créez et gérez un bail pour restreindre l’accès en écriture et supprimer le chemin d’accès. Cette opération prend en charge les requêtes HTTP conditionnelles. Pour plus d’informations, consultez Spécification d’en-têtes conditionnels pour les opérations de service Blob.

POST https://{accountName}.{dnsSuffix}/{filesystem}/{path}
POST https://{accountName}.{dnsSuffix}/{filesystem}/{path}?timeout={timeout}

Paramètres URI

Nom Dans Obligatoire Type Description
accountName
path True

string

Nom du compte stockage Azure.

dnsSuffix
path True

string

Suffixe DNS pour le point de terminaison Azure Data Lake Storage.

filesystem
path True

string

minLength: 3
maxLength: 63
pattern: ^[$a-z0-9](?!.*--)[-a-z0-9]{1,61}[a-z0-9]$

Identificateur du système de fichiers.

path
path True

string

Chemin du fichier ou du répertoire.

timeout
query

integer (int32)

minimum: 1

Valeur de délai d’expiration d’opération facultative en secondes. La période commence lorsque la demande est reçue par le service. Si la valeur de délai d’expiration s’écoule avant la fin de l’opération, l’opération échoue.

En-tête de la demande

Nom Obligatoire Type Description
x-ms-lease-action True

PathLeaseAction

Il existe cinq actions de bail : « acquire », « break », « change », « renew » et « release ». Utilisez « acquire » et spécifiez « x-ms-proposed-lease-id » et « x-ms-lease-duration » pour acquérir un nouveau bail. Utilisez « break » pour rompre un bail existant. Lorsqu’un bail est rompu, la période d’arrêt du bail est autorisée à s’écouler, pendant laquelle aucune opération de bail, à l’exception de l’arrêt et de la libération, peut être effectuée sur le fichier. Lorsqu’un bail est rompu, la réponse indique l’intervalle en secondes jusqu’à ce qu’un nouveau bail puisse être acquis. Utilisez « change » et spécifiez l’ID de bail actuel dans « x-ms-lease-id » et le nouvel ID de bail dans « x-ms-proposed-lease-id » pour modifier l’ID de bail d’un bail actif. Utilisez « renouveler » et spécifiez « x-ms-lease-id » pour renouveler un bail existant. Utilisez « release » et spécifiez « x-ms-lease-id » pour libérer un bail.

x-ms-lease-duration

integer (int32)

La durée du bail est requise pour acquérir un bail et spécifie la durée du bail en secondes. La durée du bail doit être comprise entre 15 et 60 secondes ou -1 pour un bail infini.

x-ms-lease-break-period

integer (int32)

La durée de la période d’arrêt du bail est facultative pour interrompre un bail et spécifie la période d’arrêt du bail en secondes. La durée du saut de bail doit être comprise entre 0 et 60 secondes.

x-ms-lease-id

string

pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

Obligatoire lorsque « x-ms-lease-action » est « renouveler », « modifier » ou « release ». Pour les actions de renouvellement et de mise en production, cela doit correspondre à l’ID de bail actuel.

x-ms-proposed-lease-id

string

pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

Obligatoire lorsque « x-ms-lease-action » est « acquérir » ou « modifier ». Un bail sera acquis avec cet ID de bail si l’opération réussit.

If-Match

string

Optionnel. Une valeur ETag. Spécifiez cet en-tête pour effectuer l’opération uniquement si l’ETag de la ressource correspond à la valeur spécifiée. L’ETag doit être spécifié entre guillemets.

If-None-Match

string

Optionnel. Une valeur ETag ou un caractère générique spécial (« * »). Spécifiez cet en-tête pour effectuer l’opération uniquement si l’ETag de la ressource ne correspond pas à la valeur spécifiée. L’ETag doit être spécifié entre guillemets.

If-Modified-Since

string

Optionnel. Valeur de date et d’heure. Spécifiez cet en-tête pour effectuer l’opération uniquement si la ressource a été modifiée depuis la date et l’heure spécifiées.

If-Unmodified-Since

string

Optionnel. Valeur de date et d’heure. Spécifiez cet en-tête pour effectuer l’opération uniquement si la ressource n’a pas été modifiée depuis la date et l’heure spécifiées.

x-ms-client-request-id

string

pattern: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

Un UUID enregistré dans les journaux d’activité d’analytique pour la résolution des problèmes et la corrélation.

x-ms-date

string

Spécifie le temps universel coordonné (UTC) de la requête. Cela est nécessaire lors de l’utilisation de l’autorisation de clé partagée.

x-ms-version

string

Spécifie la version du protocole REST utilisée pour le traitement de la requête. Cela est nécessaire lors de l’utilisation de l’autorisation de clé partagée.

Réponses

Nom Type Description
200 OK

L’action « renouveler », « modifier » ou « libérer » a réussi.

En-têtes

  • Date: string
  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-id: string
201 Created

Un nouveau bail a été créé. L’action « acquérir » a réussi.

En-têtes

  • Date: string
  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-id: string
202 Accepted

L’action de bail « break » a réussi.

En-têtes

  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-time: string
Other Status Codes

DataLakeStorageError

Une erreur s’est produite. L’état HTTP, le code et les chaînes de message possibles sont répertoriés ci-dessous :

  • 400 Demande incorrecte, ContentLengthMustBeZero, « L’en-tête de requête Content-Length doit être égal à zéro ».
  • 400 Demande incorrecte, InvalidAuthenticationInfo, « Les informations d’authentification ne sont pas fournies au format correct. Vérifiez la valeur de l’en-tête d’autorisation. »
  • 400 Demande incorrecte, InvalidFlushPosition, « Les données chargées ne sont pas contiguës ou la valeur du paramètre de requête position n’est pas égale à la longueur du fichier après l’ajout des données chargées ».
  • 400 Requête incorrecte, InvalidHeaderValue, « La valeur de l’un des en-têtes HTTP n’est pas au format correct ».
  • 400 Requête incorrecte, InvalidHttpVerb, « Le verbe HTTP spécifié n’est pas valide ; il n’est pas reconnu par le serveur ».
  • 400 Demande incorrecte, InvalidInput, « L’une des entrées de requête n’est pas valide ».
  • 400 Requête incorrecte, InvalidPropertyName, « Un nom de propriété ne peut pas être vide ».
  • 400 Requête incorrecte, InvalidPropertyName, « Le nom de la propriété contient des caractères non valides ».
  • 400 Requête incorrecte, InvalidQueryParameterValue, « La valeur de l’un des paramètres de requête spécifiés dans l’URI de requête n’est pas valide ».
  • 400 Requête incorrecte, InvalidResourceName, « Le nom de ressource spécifié contient des caractères non valides ».
  • 400 Requête incorrecte, InvalidSourceUri, « L’URI source n’est pas valide ».
  • 400 Requête incorrecte, InvalidUri, « L’URI de la requête n’est pas valide ».
  • 400 Requête incorrecte, MissingRequiredHeader, « Un en-tête HTTP obligatoire pour cette requête n’est pas spécifié ».
  • 400 Requête incorrecte, MissingRequiredQueryParameter, « Paramètre de requête obligatoire pour cette requête n’est pas spécifié ».
  • 400 Demande incorrecte, MultipleConditionHeadersNotSupported, « Les en-têtes de condition multiples ne sont pas pris en charge ».
  • 400 Requête incorrecte, OutOfRangeInput, « L’une des entrées de requête est hors limites ».
  • 400 Requête incorrecte, OutOfRangeQueryParameterValue, « L’un des paramètres de requête spécifiés dans l’URI de requête est en dehors de la plage autorisée ».
  • 400 Demande incorrecte, UnsupportedHeader, « L’un des en-têtes spécifiés dans la requête n’est pas pris en charge ».
  • 400 Requête incorrecte, UnsupportedQueryParameter, « L’un des paramètres de requête spécifiés dans l’URI de requête n’est pas pris en charge ».
  • 400 Demande incorrecte, UnsupportedRestVersion, « La version rest spécifiée n’est pas prise en charge ».
  • 403 Interdit, AccountIsDisabled, « Le compte spécifié est désactivé ».
  • 403 Interdit, AuthorizationFailure, « Cette demande n’est pas autorisée à effectuer cette opération. »
  • 403 Interdit, InsufficientAccountPermissions, « Le compte accessible ne dispose pas des autorisations suffisantes pour exécuter cette opération ».
  • 404 Introuvable, FilesystemNotFound, « Le système de fichiers spécifié n’existe pas ».
  • 404 Introuvable, PathNotFound, « Le chemin spécifié n’existe pas ».
  • 404 Introuvable, RenameDestinationParentPathNotFound, « Le répertoire parent du chemin de destination n’existe pas ».
  • 404 Introuvable, ResourceNotFound, « La ressource spécifiée n’existe pas ».
  • 404 Introuvable, SourcePathNotFound, « Le chemin source d’une opération de renommage n’existe pas ».
  • Méthode 405 Non autorisée, UnsupportedHttpVerb, « La ressource ne prend pas en charge le verbe HTTP spécifié ».
  • Conflit 409, DestinationPathIsBeingDeleted, « Le chemin de destination spécifié est marqué pour être supprimé ».
  • 409 Conflict, DirectoryNotEmpty, « La valeur du paramètre de requête récursive doit être true pour supprimer un répertoire non vide ».
  • Conflit 409, FilesystemAlreadyExists, « Le système de fichiers spécifié existe déjà ».
  • 409 Conflit, FilesystemBeingDeleted, « Le système de fichiers spécifié est supprimé ».
  • 409 Conflict, InvalidDestinationPath, « The specified path, or an element of the path, exists and its resource type is invalid for this operation ». * 409 Conflict, InvalidFlushOperation, « La ressource a été créée ou modifiée par l’API du service Blob et ne peut pas être écrite par l’API du service Data Lake Storage ».
  • 409 Conflict, InvalidRenameSourcePath, « Le répertoire source ne peut pas être identique au répertoire de destination, ni la destination ne peut pas être un sous-répertoire du répertoire source ».
  • 409 Conflict, InvalidSourceOrDestinationResourceType, « Le type de ressource source et de destination doit être identique ».
  • 409 Conflit, LeaseAlreadyPresent, « Il y a déjà un bail présent. »
  • 409 Conflict, LeaseIdMismatchWithLeaseOperation, « L’ID de bail spécifié ne correspondait pas à l’ID de bail de la ressource avec l’opération de bail spécifiée. »
  • 409 Conflit, LeaseIsAlreadyBroken, « Le bail a déjà été rompu et ne peut pas être rompu à nouveau. »
  • 409 Conflit, LeaseIsBreakingAndCannotBeAcquired, « L’ID de bail mis en correspondance, mais le bail est actuellement en état de rupture et ne peut pas être acquis tant qu’il n’est pas rompu ».
  • 409 Conflit, LeaseIsBreakingAndCannotBeChanged, « L’ID de bail correspond, mais le bail est actuellement en état cassant et ne peut pas être modifié ».
  • 409 Conflit, LeaseIsBrokenAndCannotBeRenewed, « L’ID de bail correspond, mais le bail a été rompu explicitement et ne peut pas être renouvelé ».
  • 409 Conflit, LeaseNameMismatch, « Le nom du bail spécifié ne correspondait pas au nom de bail existant ».
  • 409 Conflit, LeaseNotPresentWithLeaseOperation, « L’ID de bail n’est pas présent avec l’opération de bail spécifiée ».
  • 409 Conflit, PathAlreadyExists, « Le chemin spécifié existe déjà ».
  • 409 Conflict, PathConflict, « The specified path, or an element of the path, exists and its resource type is invalid for this operation ».
  • 409 Conflict, SourcePathIsBeingDeleted, « Le chemin source spécifié est marqué pour être supprimé ».
  • 409 Conflit, ResourceTypeMismatch, « Le type de ressource spécifié dans la requête ne correspond pas au type de la ressource ».
  • 412 Échec de la condition préalable, ConditionNotMet, « La condition spécifiée à l’aide des en-têtes conditionnels HTTP n’est pas remplie ».
  • 412 Échec de la condition préalable, LeaseIdMismatch, « L’ID de bail spécifié ne correspondait pas à l’ID de bail de la ressource ».
  • 412 Échec de la condition préalable, LeaseIdMissing, « Il existe actuellement un bail sur la ressource et aucun ID de bail n’a été spécifié dans la demande. »
  • 412 Échec de la condition préalable, LeaseNotPresent, « Il n’existe actuellement aucun bail sur la ressource ».
  • 412 Échec de la condition préalable, LeaseLost, « Un ID de bail a été spécifié, mais le bail de la ressource a expiré ».
  • 412 Échec de la condition préalable, SourceConditionNotMet, « La condition source spécifiée à l’aide des en-têtes conditionnels HTTP n’est pas remplie ».
  • 413 Entité de requête trop grande, RequestBodyTooLarge, « Le corps de la requête est trop grand et dépasse la limite maximale autorisée ».
  • 416 Plage demandée non satisfiable, InvalidRange, « La plage spécifiée n’est pas valide pour la taille actuelle de la ressource ».
  • 500 Erreur de serveur interne, InternalError, « Le serveur a rencontré une erreur interne. Réessayez la demande. »
  • Erreur de serveur interne 500, OperationTimedOut, « L’opération n’a pas pu être terminée dans le délai autorisé ».
  • 503 Service indisponible, ServerBusy, « La sortie dépasse la limite de compte ».
  • 503 Service indisponible, ServerBusy, « Entrée dépasse la limite de compte ».
  • 503 Service indisponible, ServerBusy, « Les opérations par seconde dépassent la limite de compte ».
  • 503 Service indisponible, ServerBusy, « Le serveur n’est actuellement pas en mesure de recevoir des demandes. Veuillez réessayer votre demande.

En-têtes

  • x-ms-request-id: string
  • x-ms-version: string

Définitions

Nom Description
DataLakeStorageError
Error

Objet de réponse d’erreur de service.

PathLeaseAction

Il existe cinq actions de bail : « acquire », « break », « change », « renew » et « release ». Utilisez « acquire » et spécifiez « x-ms-proposed-lease-id » et « x-ms-lease-duration » pour acquérir un nouveau bail. Utilisez « break » pour rompre un bail existant. Lorsqu’un bail est rompu, la période d’arrêt du bail est autorisée à s’écouler, pendant laquelle aucune opération de bail, à l’exception de l’arrêt et de la libération, peut être effectuée sur le fichier. Lorsqu’un bail est rompu, la réponse indique l’intervalle en secondes jusqu’à ce qu’un nouveau bail puisse être acquis. Utilisez « change » et spécifiez l’ID de bail actuel dans « x-ms-lease-id » et le nouvel ID de bail dans « x-ms-proposed-lease-id » pour modifier l’ID de bail d’un bail actif. Utilisez « renouveler » et spécifiez « x-ms-lease-id » pour renouveler un bail existant. Utilisez « release » et spécifiez « x-ms-lease-id » pour libérer un bail.

DataLakeStorageError

Nom Type Description
error

Error

Objet de réponse d’erreur de service.

Error

Objet de réponse d’erreur de service.

Nom Type Description
code

string

Code d’erreur du service.

message

string

Message d’erreur du service.

PathLeaseAction

Il existe cinq actions de bail : « acquire », « break », « change », « renew » et « release ». Utilisez « acquire » et spécifiez « x-ms-proposed-lease-id » et « x-ms-lease-duration » pour acquérir un nouveau bail. Utilisez « break » pour rompre un bail existant. Lorsqu’un bail est rompu, la période d’arrêt du bail est autorisée à s’écouler, pendant laquelle aucune opération de bail, à l’exception de l’arrêt et de la libération, peut être effectuée sur le fichier. Lorsqu’un bail est rompu, la réponse indique l’intervalle en secondes jusqu’à ce qu’un nouveau bail puisse être acquis. Utilisez « change » et spécifiez l’ID de bail actuel dans « x-ms-lease-id » et le nouvel ID de bail dans « x-ms-proposed-lease-id » pour modifier l’ID de bail d’un bail actif. Utilisez « renouveler » et spécifiez « x-ms-lease-id » pour renouveler un bail existant. Utilisez « release » et spécifiez « x-ms-lease-id » pour libérer un bail.

Valeur Description
acquire
break
change
renew
release