Freigeben über


Path - Lease

Leasepfad
Erstellen und verwalten Sie eine Lease, um den Schreib- und Löschzugriff auf den Pfad einzuschränken. Dieser Vorgang unterstützt bedingte HTTP-Anforderungen. Weitere Informationen finden Sie unter Specifying Conditional Headers for Blob Service Operations (Angeben von bedingten Headern für Vorgänge des Blob-Diensts).

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

URI-Parameter

Name In Erforderlich Typ Beschreibung
accountName
path True

string

Der Name des Azure Storage-Kontos.

dnsSuffix
path True

string

Das DNS-Suffix für den Azure Data Lake Storage-Endpunkt.

filesystem
path True

string

Der Dateisystembezeichner.

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

path
path True

string

Der Datei- oder Verzeichnispfad.

timeout
query

integer

int32

Ein optionaler Vorgangstimeoutwert in Sekunden. Der Zeitraum beginnt, wenn die Anforderung vom Dienst empfangen wird. Wenn der Timeoutwert verstrichen ist, bevor der Vorgang abgeschlossen ist, schlägt der Vorgang fehl.

Anforderungsheader

Name Erforderlich Typ Beschreibung
x-ms-lease-action True

PathLeaseAction

Es gibt fünf Leaseaktionen: "erwerben", "break", "change", "renew" und "release". Verwenden Sie "acquire", und geben Sie "x-ms-proposed-lease-id" und "x-ms-lease-duration" an, um eine neue Lease zu erwerben. Verwenden Sie "Break", um eine vorhandene Lease zu unterbrechen. Wenn ein Lease unterbrochen wird, darf der Leaseunterbrechungszeitraum verstreichen, während dessen kein Leasevorgang außer Unterbrechung und Freigabe für die Datei ausgeführt werden kann. Wenn eine Lease erfolgreich unterbrochen wurde, gibt die Antwort das Intervall in Sekunden an, bis eine neue Lease abgerufen werden kann. Verwenden Sie "change", und geben Sie die aktuelle Lease-ID in "x-ms-lease-id" und die neue Lease-ID in "x-ms-proposed-lease-id" an, um die Lease-ID einer aktiven Lease zu ändern. Verwenden Sie "renew", und geben Sie die "x-ms-lease-id" an, um eine vorhandene Lease zu verlängern. Verwenden Sie "release", und geben Sie die "x-ms-lease-id" an, um eine Lease freizugeben.

x-ms-lease-duration

integer

int32

Die Leasedauer ist erforderlich, um eine Lease zu erwerben, und gibt die Dauer der Lease in Sekunden an. Die Leasedauer muss zwischen 15 und 60 Sekunden oder -1 für eine unbegrenzte Lease betragen.

x-ms-lease-break-period

integer

int32

Die Dauer des Leaseunterbrechungszeitraums ist optional, um eine Lease zu unterbrechen, und gibt den Pausenzeitraum der Lease in Sekunden an. Die Dauer der Leaseunterbrechung muss zwischen 0 und 60 Sekunden betragen.

x-ms-lease-id

string

Erforderlich, wenn "x-ms-lease-action" auf "renew", "change" oder "release" festgelegt ist. Für die Erneuerungs- und Freigabeaktionen muss diese mit der aktuellen Lease-ID übereinstimmen.

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

x-ms-proposed-lease-id

string

Erforderlich, wenn "x-ms-lease-action" auf "acquire" oder "change" festgelegt ist. Eine Lease wird mit dieser Lease-ID erworben, wenn der Vorgang erfolgreich ist.

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

If-Match

string

Optional. Ein ETag-Wert. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn das ETag der Ressource mit dem angegebenen Wert übereinstimmt. Das ETag muss in Anführungszeichen angegeben werden.

If-None-Match

string

Optional. Ein ETag-Wert oder der spezielle Wildcardwert ("*") Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn das ETag der Ressource nicht mit dem angegebenen Wert übereinstimmt. Das ETag muss in Anführungszeichen angegeben werden.

If-Modified-Since

string

Optional. Ein Datums- und Uhrzeitwert. Geben Sie diesen Header an, um den Vorgang nur auszuführen, wenn die Ressource seit dem angegebenen Datum und der angegebenen Uhrzeit geändert wurde.

If-Unmodified-Since

string

Optional. Ein Datums- und Uhrzeitwert. Geben Sie diesen Header an, um den Vorgang nur auszuführen, wenn die Ressource seit dem angegebenen Datum und der angegebenen Uhrzeit nicht geändert wurde.

x-ms-client-request-id

string

Eine in den Analyseprotokollen für die Problembehandlung und Korrelation aufgezeichnete UUID.

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

x-ms-date

string

Gibt die koordinierte Weltzeit (Coordinated Universal Time, UTC) für die Anforderung an. Dies ist erforderlich, wenn die Autorisierung mit gemeinsam genutzten Schlüsseln verwendet wird.

x-ms-version

string

Gibt die Version des REST-Protokolls an, das für die Verarbeitung der Anforderung verwendet wird. Dies ist erforderlich, wenn die Autorisierung mit gemeinsam genutzten Schlüsseln verwendet wird.

Antworten

Name Typ Beschreibung
200 OK

Die Aktion "Erneuern", "Ändern" oder "Freigeben" war erfolgreich.

Headers

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

Eine neue Lease wurde erstellt. Die Aktion "erwerben" war erfolgreich.

Headers

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

Die Leaseaktion "Break" war erfolgreich.

Headers

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

DataLakeStorageError

Ein Fehler ist aufgetreten. Die möglichen HTTP-status, Code und Nachrichtenzeichenfolgen sind unten aufgeführt:

  • 400 Bad Request, ContentLengthMustBeZero, "Der Content-Length-Anforderungsheader muss null sein."
  • 400 Bad Request, InvalidAuthenticationInfo, "Authentifizierungsinformationen werden nicht im richtigen Format angegeben. Überprüfen Sie den Wert des Autorisierungsheaders."
  • 400 Bad Request, InvalidFlushPosition, "Die hochgeladenen Daten sind nicht zusammenhängend, oder der Wert des Positionsabfrageparameters entspricht nicht der Länge der Datei nach dem Anfügen der hochgeladenen Daten."
  • 400 Bad Request, InvalidHeaderValue, "Der Wert für einen der HTTP-Header hat nicht das richtige Format."
  • 400 Bad Request, InvalidHttpVerb, "The HTTP verb specified is invalid - it is not recognized by the server."
  • 400 Bad Request, InvalidInput, "Eine der Anforderungseingaben ist ungültig."
  • 400 Bad Request, InvalidPropertyName, "Ein Eigenschaftsname darf nicht leer sein."
  • 400 Bad Request, InvalidPropertyName, "Der Eigenschaftenname enthält ungültige Zeichen."
  • 400 Bad Request, InvalidQueryParameterValue, "Value for one of the query parameters specified in the request URI is invalid."
  • 400 Bad Request, InvalidResourceName, "Der angegebene Ressourcenname enthält ungültige Zeichen."
  • 400 Ungültige Anforderung, InvalidSourceUri, "Der Quell-URI ist ungültig."
  • 400 Ungültige Anforderung, InvalidUri, "Der Anforderungs-URI ist ungültig."
  • 400 Bad Request, MissingRequiredHeader, "Ein HTTP-Header, der für diese Anforderung erforderlich ist, ist nicht angegeben."
  • 400 Bad Request, MissingRequiredQueryParameter, "Ein Abfrageparameter, der für diese Anforderung erforderlich ist, ist nicht angegeben."
  • 400 Bad Request, MultipleConditionHeadersNotSupported, "Mehrere Bedingungsheader werden nicht unterstützt."
  • 400 Bad Request, OutOfRangeInput, "Eine der Anforderungseingaben liegt außerhalb des Bereichs."
  • 400 Bad Request, OutOfRangeQueryParameterValue, "Einer der im Anforderungs-URI angegebenen Abfrageparameter liegt außerhalb des zulässigen Bereichs."
  • 400 Bad Request, UnsupportedHeader, "Einer der in der Anforderung angegebenen Header wird nicht unterstützt."
  • 400 Bad Request, UnsupportedQueryParameter, "Einer der Abfrageparameter, die im Anforderungs-URI angegeben sind, wird nicht unterstützt."
  • 400 Bad Request, UnsupportedRestVersion, "The specified Rest Version is Unsupported."
  • 403 Verboten, AccountIsDisabled, "Das angegebene Konto ist deaktiviert."
  • 403 Forbidden, AuthorizationFailure, "This request is not authorized to perform this operation."
  • 403 Forbidden, InsufficientAccountPermissions, "Das Konto, auf das zugegriffen wird, verfügt nicht über ausreichende Berechtigungen, um diesen Vorgang auszuführen."
  • 404 Not Found, FilesystemNotFound, "Das angegebene Dateisystem ist nicht vorhanden."
  • 404 Nicht gefunden, PathNotFound, "Der angegebene Pfad ist nicht vorhanden."
  • 404 Not Found, RenameDestinationParentPathNotFound, "Das übergeordnete Verzeichnis des Zielpfads ist nicht vorhanden."
  • 404 Nicht gefunden, ResourceNotFound, "Die angegebene Ressource ist nicht vorhanden."
  • 404 Not Found, SourcePathNotFound, "Der Quellpfad für einen Umbenennungsvorgang ist nicht vorhanden."
  • 405 Method Not Allowed, UnsupportedHttpVerb, "The resource does't support the specified HTTP verb."
  • 409 Conflict, DestinationPathIsBeingDeleted, "The specified destination path is marked to be deleted."
  • 409 Conflict, DirectoryNotEmpty, "Der rekursive Abfrageparameterwert muss true sein, um ein nicht leeres Verzeichnis zu löschen."
  • 409 Conflict, FilesystemAlreadyExists, "Das angegebene Dateisystem ist bereits vorhanden."
  • 409 Conflict, FilesystemBeingDeleted, "Das angegebene Dateisystem wird gelöscht."
  • 409 Conflict, InvalidDestinationPath, "Der angegebene Pfad oder ein Element des Pfads ist vorhanden, und sein Ressourcentyp ist für diesen Vorgang ungültig." * 409 Conflict, InvalidFlushOperation, "Die Ressource wurde von der Blobdienst-API erstellt oder geändert und kann nicht von der Data Lake Storage-Dienst-API geschrieben werden."
  • 409 Conflict, InvalidRenameSourcePath, "Das Quellverzeichnis kann nicht mit dem Zielverzeichnis identisch sein, noch kann das Ziel ein Unterverzeichnis des Quellverzeichnisses sein."
  • 409 Conflict, InvalidSourceOrDestinationResourceType, "Quell- und Zielressourcentyp müssen identisch sein."
  • 409 Conflict, LeaseAlreadyPresent, "Es ist bereits ein Lease vorhanden."
  • 409 Conflict, LeaseIdMismatchWithLeaseOperation, "Die angegebene Lease-ID stimmte nicht mit der Lease-ID für die Ressource mit dem angegebenen Leasevorgang überein."
  • 409 Conflict, LeaseIsAlreadyBroken, "Die Lease wurde bereits gebrochen und kann nicht erneut gebrochen werden."
  • 409 Conflict, LeaseIsBreakingAndCannotBeAcquired, "Die Lease-ID stimmt überein, aber die Lease befindet sich derzeit im Unterbrechungszustand und kann erst erworben werden, wenn sie unterbrochen ist."
  • 409 Conflict, LeaseIsBreakingAndCannotBeChanged, "The lease ID matched, but the lease is currently in breaking state and cannot be change."
  • 409 Conflict, LeaseIsBrokenAndCannotBeRenewed, "Die Lease-ID wurde übereinstimmend, aber die Lease wurde explizit gebrochen und kann nicht verlängert werden."
  • 409 Conflict, LeaseNameMismatch, "Der angegebene Leasename stimmte nicht mit dem vorhandenen Leasenamen überein."
  • 409 Conflict, LeaseNotPresentWithLeaseOperation, "Die Lease-ID ist beim angegebenen Leasevorgang nicht vorhanden."
  • 409 Conflict, PathAlreadyExists, "Der angegebene Pfad ist bereits vorhanden."
  • 409 Conflict, PathConflict, "Der angegebene Pfad oder ein Element des Pfads ist vorhanden, und sein Ressourcentyp ist für diesen Vorgang ungültig."
  • 409 Conflict, SourcePathIsBeingDeleted, "Der angegebene Quellpfad ist zum Löschen markiert."
  • 409 Conflict, ResourceTypeMismatch, "Der in der Anforderung angegebene Ressourcentyp stimmt nicht mit dem Typ der Ressource überein."
  • 412 Condition Failed, ConditionNotMet, "The condition specified using HTTP conditional header(s) is not erfüllt."
  • 412 Vorbedingung fehlgeschlagen, LeaseIdMismatch, "Die angegebene Lease-ID stimmte nicht mit der Lease-ID für die Ressource überein."
  • 412 Vorbedingung fehlgeschlagen, LeaseIdMissing, "Derzeit ist eine Lease für die Ressource vorhanden, und in der Anforderung wurde keine Lease-ID angegeben."
  • 412 Vorbedingung fehlgeschlagen, LeaseNotPresent, "Derzeit gibt es keine Lease für die Ressource."
  • 412 Voraussetzung fehlgeschlagen, LeaseLost, "Eine Lease-ID wurde angegeben, aber die Lease für die Ressource ist abgelaufen."
  • 412 Voraussetzung fehlgeschlagen, SourceConditionNotMet, "Die Quellbedingung, die mithilfe von bedingten HTTP-Headern angegeben wurde, ist nicht erfüllt."
  • 413 Anforderungsentität zu groß, RequestBodyTooLarge, "Der Anforderungstext ist zu groß und überschreitet den maximal zulässigen Grenzwert."
  • 416 Angeforderter Bereich nicht zufriedenstellend, InvalidRange, "Der angegebene Bereich ist für die aktuelle Größe der Ressource ungültig."
  • 500 Internal Server Error, InternalError, "Der Server hat einen internen Fehler gefunden. Versuchen Sie die Anforderung erneut.“
  • 500 Interner Serverfehler, OperationTimedOut, "Der Vorgang konnte nicht innerhalb der zulässigen Zeit abgeschlossen werden."
  • 503 Dienst nicht verfügbar, ServerBusy, "Egress is over the account limit".
  • 503 Dienst nicht verfügbar, ServerBusy, "Eingehender Wert überschreitet das Kontolimit".
  • 503 Dienst nicht verfügbar, ServerBusy, "Vorgänge pro Sekunde überschreiten das Kontolimit".
  • 503 Dienst nicht verfügbar, ServerBusy, "Der Server kann derzeit keine Anforderungen empfangen. Please retry your request. (Wiederholen Sie die Anforderung.)“

Headers

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

Definitionen

Name Beschreibung
DataLakeStorageError
Error

Das Dienstfehlerantwortobjekt.

PathLeaseAction

Es gibt fünf Leaseaktionen: "erwerben", "break", "change", "renew" und "release". Verwenden Sie "acquire", und geben Sie "x-ms-proposed-lease-id" und "x-ms-lease-duration" an, um eine neue Lease zu erwerben. Verwenden Sie "Break", um eine vorhandene Lease zu unterbrechen. Wenn ein Lease unterbrochen wird, darf der Leaseunterbrechungszeitraum verstreichen, während dessen kein Leasevorgang außer Unterbrechung und Freigabe für die Datei ausgeführt werden kann. Wenn eine Lease erfolgreich unterbrochen wurde, gibt die Antwort das Intervall in Sekunden an, bis eine neue Lease abgerufen werden kann. Verwenden Sie "change", und geben Sie die aktuelle Lease-ID in "x-ms-lease-id" und die neue Lease-ID in "x-ms-proposed-lease-id" an, um die Lease-ID einer aktiven Lease zu ändern. Verwenden Sie "renew", und geben Sie die "x-ms-lease-id" an, um eine vorhandene Lease zu verlängern. Verwenden Sie "release", und geben Sie die "x-ms-lease-id" an, um eine Lease freizugeben.

DataLakeStorageError

Name Typ Beschreibung
error

Error

Das Dienstfehlerantwortobjekt.

Error

Das Dienstfehlerantwortobjekt.

Name Typ Beschreibung
code

string

Der Dienstfehlercode.

message

string

Die Dienstfehlermeldung.

PathLeaseAction

Es gibt fünf Leaseaktionen: "erwerben", "break", "change", "renew" und "release". Verwenden Sie "acquire", und geben Sie "x-ms-proposed-lease-id" und "x-ms-lease-duration" an, um eine neue Lease zu erwerben. Verwenden Sie "Break", um eine vorhandene Lease zu unterbrechen. Wenn ein Lease unterbrochen wird, darf der Leaseunterbrechungszeitraum verstreichen, während dessen kein Leasevorgang außer Unterbrechung und Freigabe für die Datei ausgeführt werden kann. Wenn eine Lease erfolgreich unterbrochen wurde, gibt die Antwort das Intervall in Sekunden an, bis eine neue Lease abgerufen werden kann. Verwenden Sie "change", und geben Sie die aktuelle Lease-ID in "x-ms-lease-id" und die neue Lease-ID in "x-ms-proposed-lease-id" an, um die Lease-ID einer aktiven Lease zu ändern. Verwenden Sie "renew", und geben Sie die "x-ms-lease-id" an, um eine vorhandene Lease zu verlängern. Verwenden Sie "release", und geben Sie die "x-ms-lease-id" an, um eine Lease freizugeben.

Name Typ Beschreibung
acquire

string

break

string

change

string

release

string

renew

string