Condividi tramite


Path - Delete

Elimina file | Elimina directory
Eliminare il file o la directory. Questa operazione supporta le richieste HTTP condizionali. Per altre informazioni, vedere Specifica di intestazioni condizionali per le operazioni del servizio BLOB. Nota: l'API "Path - Delete" non supporta l'eliminazione delle versioni blob. Per altre informazioni sull'eliminazione di BLOB con versioni, vedere Eliminare BLOB.

DELETE https://{accountName}.{dnsSuffix}/{filesystem}/{path}
DELETE https://{accountName}.{dnsSuffix}/{filesystem}/{path}?recursive={recursive}&continuation={continuation}&paginated={paginated}&timeout={timeout}

Parametri dell'URI

Nome In Necessario Tipo Descrizione
accountName
path True

string

Nome dell'account di archiviazione di Azure.

dnsSuffix
path True

string

Suffisso DNS per l'endpoint di Azure Data Lake Storage.

filesystem
path True

string

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

Identificatore del file system.

path
path True

string

Percorso del file o della directory.

continuation
query

string

Opzionale. Quando si elimina una directory, il numero di percorsi eliminati con ogni chiamata è limitato. Se il numero di percorsi da eliminare supera questo limite, viene restituito un token di continuazione nell'intestazione della risposta. Quando viene restituito un token di continuazione nella risposta, è necessario specificarlo in una chiamata successiva dell'operazione di eliminazione per continuare a eliminare la directory.

paginated
query

boolean

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account e la risorsa è una directory con il parametro di query "ricorsivo" impostato su "true". Per l'eliminazione ricorsiva della directory, il numero di percorsi che possono essere eliminati con ogni chiamata è limitato quando il meccanismo di autorizzazione usato è ACL e il chiamante è un utente non con privilegi avanzati, perché il timeout predefinito è di 30 secondi. Quando il parametro di query "impaginato" è impostato su "true", l'intestazione della risposta può contenere "x-ms-continuation" se viene raggiunto il limite precedente. Durante l'invio del parametro di query "x-ms-continuation" nella richiesta di sottosequnt, il parametro di query "impaginato" e "ricorsivo" deve essere impostato su "true". Quando la risposta non contiene "x-ms-continuation", l'eliminazione ricorsiva della directory ha esito positivo. L'eliminazione effettiva della directory avviene solo nell'ultima chiamata, quelle precedenti comportano controlli ACL nel server dei file e delle directory nella directory da eliminare in modo ricorsivo.

recursive
query

boolean

Obbligatorio e valido solo quando la risorsa è una directory. Se "true", tutti i percorsi sotto la directory verranno eliminati. Se "false" e la directory non è vuota, si verifica un errore.

timeout
query

integer (int32)

minimum: 1

Valore facoltativo di timeout dell'operazione in secondi. Il periodo inizia quando la richiesta viene ricevuta dal servizio. Se il valore di timeout è trascorso prima del completamento dell'operazione, l'operazione ha esito negativo.

Intestazione della richiesta

Nome Necessario Tipo Descrizione
x-ms-lease-id

string

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

L'ID lease deve essere specificato se è presente un lease attivo.

If-Match

string

Opzionale. Un valore ETag. Specificare questa intestazione per eseguire l'operazione solo se l'ETag della risorsa corrisponde al valore specificato. L'ETag deve essere specificato tra virgolette.

If-None-Match

string

Opzionale. Valore ETag o valore con caratteri jolly speciali ("*"). Specificare questa intestazione per eseguire l'operazione solo se l'ETag della risorsa non corrisponde al valore specificato. L'ETag deve essere specificato tra virgolette.

If-Modified-Since

string

Opzionale. Valore di data e ora. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo la data e l'ora specificate.

If-Unmodified-Since

string

Opzionale. Valore di data e ora. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo la data e l'ora specificate.

x-ms-client-request-id

string

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

UUID registrato nei log di analisi per la risoluzione dei problemi e la correlazione.

x-ms-date

string

Specifica l'ora UTC (Coordinated Universal Time) per la richiesta. Questa operazione è necessaria quando si usa l'autorizzazione con chiave condivisa.

x-ms-version

string

Specifica la versione del protocollo REST usato per l'elaborazione della richiesta. Questa operazione è necessaria quando si usa l'autorizzazione con chiave condivisa.

Risposte

Nome Tipo Descrizione
200 OK

Il file è stato eliminato.

Intestazioni

  • Date: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-continuation: string
202 Accepted

La richiesta di eliminazione viene accettata, applicabile solo quando lo spazio dei nomi gerarchico è abilitato per l'account.

Intestazioni

  • Date: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-continuation: string
Other Status Codes

DataLakeStorageError

Si è verificato un errore. Di seguito sono elencate le possibili stringhe di stato, codice e messaggio HTTP:

  • 400 Richiesta non valida, ContentLengthMustBeZero, "L'intestazione della richiesta Content-Length deve essere zero".
  • 400 Richiesta non valida, InvalidAuthenticationInfo, "Le informazioni di autenticazione non sono specificate nel formato corretto. Controllare il valore dell'intestazione Authorization."
  • 400 Richiesta non valida, InvalidFlushPosition, "I dati caricati non sono contigui o il valore del parametro della query di posizione non è uguale alla lunghezza del file dopo l'aggiunta dei dati caricati".
  • 400 Richiesta non valida, InvalidHeaderValue, "Il valore per una delle intestazioni HTTP non è nel formato corretto".
  • 400 Richiesta non valida, InvalidHttpVerb, "Il verbo HTTP specificato non è valido- non è riconosciuto dal server".
  • 400 Richiesta non valida, InvalidInput, "Uno degli input della richiesta non è valido".
  • 400 Richiesta non valida, InvalidPropertyName, "Un nome di proprietà non può essere vuoto".
  • 400 Richiesta non valida, InvalidPropertyName, "Il nome della proprietà contiene caratteri non validi".
  • 400 Richiesta non valida, InvalidQueryParameterValue, "Il valore per uno dei parametri di query specificati nell'URI della richiesta non è valido".
  • 400 Richiesta non valida, InvalidResourceName, "Il nome della risorsa specificato contiene caratteri non validi".
  • 400 Richiesta non valida, InvalidSourceUri, "L'URI di origine non è valido".
  • 400 Richiesta non valida, InvalidUri, "L'URI della richiesta non è valido".
  • 400 Richiesta non valida, MissingRequiredHeader, "Un'intestazione HTTP obbligatoria per questa richiesta non è specificata".
  • 400 Richiesta non valida, MissingRequiredQueryParameter, "Parametro di query obbligatorio per questa richiesta non specificato".
  • 400 Richiesta non valida, MultipleConditionHeadersNotSupported, "Più intestazioni di condizione non sono supportate".
  • 400 Richiesta non valida, OutOfRangeInput, "Uno degli input della richiesta non è compreso nell'intervallo".
  • 400 Richiesta non valida, OutOfRangeQueryParameterValue, "Uno dei parametri di query specificati nell'URI della richiesta non è compreso nell'intervallo consentito".
  • 400 Richiesta non valida, UnsupportedHeader, "Una delle intestazioni specificate nella richiesta non è supportata".
  • 400 Richiesta non valida, UnsupportedQueryParameter, "Uno dei parametri di query specificati nell'URI della richiesta non è supportato".
  • 400 Richiesta non valida, Non supportatoRestVersion, "La versione rest specificata non è supportata".
  • 403 Accesso negato, AccountIsDisabled, "L'account specificato è disabilitato".
  • 403 Accesso negato, AuthorizationFailure, "Questa richiesta non è autorizzata a eseguire questa operazione".
  • 403 Accesso negato, InsufficientAccountPermissions: "L'account a cui si accede non dispone di autorizzazioni sufficienti per eseguire questa operazione".
  • 404 Non trovato, FilesystemNotFound, "Il file system specificato non esiste".
  • 404 Non trovato, PathNotFound, "Il percorso specificato non esiste".
  • 404 Non trovato, RenameDestinationParentPathNotFound, "La directory padre del percorso di destinazione non esiste".
  • 404 Non trovato, ResourceNotFound, "La risorsa specificata non esiste".
  • 404 Non trovato, SourcePathNotFound, "Il percorso di origine per un'operazione di ridenominazione non esiste".
  • Metodo 405 Non consentito, UnsupportedHttpVerb, "La risorsa non supporta il verbo HTTP specificato".
  • 409 Conflict, DestinationPathIsBeingDeleted, "Il percorso di destinazione specificato è contrassegnato per essere eliminato".
  • 409 Conflict, DirectoryNotEmpty, "The recursive query parameter value must be true to delete a non-empty directory."
  • 409 Conflict, FilesystemAlreadyExists, "The specified filesystem already exists".
  • 409 Conflict, FilesystemBeingDeleted, "The specified filesystem is being deleted".
  • 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, "The resource was created or modified by the Blob Service API and cannot be written to by the Data Lake Storage Service API" (La risorsa è stata creata o modificata dall'API del servizio BLOB e non può essere scritta dall'API del servizio Data Lake Storage).
  • 409 Conflict, InvalidRenameSourcePath, "The source directory cannot be the same as the destination directory, nor can the destination be a subdirectory of the source directory".
  • 409 Conflitto, InvalidSourceOrDestinationResourceType, "Il tipo di risorsa di origine e di destinazione deve essere identico".
  • 409 Conflict, LeaseAlreadyPresent, "There is already a lease present".
  • 409 Conflict, LeaseIdMismatchWithLeaseOperation, "L'ID lease specificato non corrisponde all'ID lease per la risorsa con l'operazione di lease specificata".
  • 409 Conflict, LeaseIsAlreadyBroken, "Il lease è già stato interrotto e non può essere interrotto di nuovo".
  • 409 Conflict, LeaseIsBreakingAndCannotBeAcquired, "The lease ID matched, but the lease is currently in breaking state and cannot be acquired until it broken".
  • 409 Conflict, LeaseIsBreakingAndCannotBeChanged, "The lease ID matched, but the lease is currently in breaking state and cannot be changed".
  • 409 Conflict, LeaseIsBrokenAndCannotBeRenewed, "The lease ID matched, but the lease has been broken explicitly and cannot be renewed".
  • 409 Conflict, LeaseNameMismatch, "Il nome del lease specificato non corrisponde al nome del lease esistente".
  • 409 Conflict, LeaseNotPresentWithLeaseOperation, "L'ID lease non è presente con l'operazione di lease specificata".
  • 409 Conflict, PathAlreadyExists, "The specified path already exists".
  • 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, "Il percorso di origine specificato è contrassegnato per essere eliminato".
  • 409 Conflict, ResourceTypeMismatch, "Il tipo di risorsa specificato nella richiesta non corrisponde al tipo della risorsa".
  • 412 Precondizione non riuscita, ConditionNotMet, "La condizione specificata tramite intestazioni condizionali HTTP non viene soddisfatta".
  • 412 Precondizione non riuscita, LeaseIdMismatch, "L'ID lease specificato non corrisponde all'ID lease per la risorsa".
  • 412 Precondizione non riuscita, LeaseIdMissing, "È attualmente presente un lease per la risorsa e nella richiesta non è stato specificato alcun ID lease".
  • 412 Precondizione non riuscita, LeaseNotPresent, "Attualmente non esiste alcun lease sulla risorsa".
  • 412 Precondizione non riuscita, LeaseLost, "È stato specificato un ID lease, ma il lease per la risorsa è scaduto".
  • 412 Precondizione non riuscita, SourceConditionNotMet, "La condizione di origine specificata tramite intestazioni condizionali HTTP non viene soddisfatta".
  • 413 Entità richiesta troppo grande, RequestBodyTooLarge, "Il corpo della richiesta è troppo grande e supera il limite massimo consentito".
  • 416 Intervallo richiesto non satisfiable, InvalidRange, "L'intervallo specificato non è valido per le dimensioni correnti della risorsa".
  • 500 Errore interno del server, InternalError, "Il server ha rilevato un errore interno. Ripetere la richiesta."
  • 500 Errore interno del server, OperationTimedOut, "Impossibile completare l'operazione entro il tempo consentito".
  • 503 Servizio non disponibile, ServerBusy, "Uscita superata il limite di account".
  • 503 Servizio non disponibile, ServerBusy, "Ingress is over the account limit".
  • 503 Servizio non disponibile, ServerBusy, "Le operazioni al secondo superano il limite di account".
  • 503 Servizio non disponibile, ServerBusy, "Il server non è attualmente in grado di ricevere richieste. Ripetere la richiesta."

Intestazioni

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

Definizioni

Nome Descrizione
DataLakeStorageError
Error

Oggetto risposta di errore del servizio.

DataLakeStorageError

Nome Tipo Descrizione
error

Error

Oggetto risposta di errore del servizio.

Error

Oggetto risposta di errore del servizio.

Nome Tipo Descrizione
code

string

Codice di errore del servizio.

message

string

Messaggio di errore del servizio.