Path - Create

Crea file | Creare directory | Rinomina file | Rinominare directory
Creare o rinominare un file o una directory. Per impostazione predefinita, la destinazione viene sovrascritto e se la destinazione esiste già e ha un lease il lease viene interrotto. Si noti che la ridenominazione di un file o di una directory in un contenitore con un criterio di crittografia del contenitore applicato non è consentita a meno che il contenitore di origine non abbia anche criteri di crittografia del contenitore applicati corrispondenti. Questa operazione supporta le richieste HTTP condizionali. Per altre informazioni, vedere Specifica di intestazioni condizionali per le operazioni del servizio BLOB. Per non riuscire se la destinazione esiste già, usare una richiesta condizionale con If-None-Match: "*".

PUT https://{accountName}.{dnsSuffix}/{filesystem}/{path}
PUT https://{accountName}.{dnsSuffix}/{filesystem}/{path}?resource={resource}&continuation={continuation}&mode={mode}&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

Identificatore del file system.

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

path
path True

string

Percorso file o directory.

continuation
query

string

facoltativo. Quando si rinomina una directory, il numero di percorsi rinominati con ogni chiamata è limitato. Se il numero di percorsi da rinominare supera questo limite, viene restituito un token di continuazione nell'intestazione della risposta. Quando viene restituito un token di continuazione nella risposta, deve essere specificato in una chiamata successiva dell'operazione di ridenominazione per continuare a rinominare la directory.

mode
query

PathRenameMode

facoltativo. Valido solo quando lo spazio dei nomi è abilitato. Questo parametro determina il comportamento dell'operazione di ridenominazione. Il valore deve essere "legacy" o "posix" e il valore predefinito sarà "posix".

resource
query

PathResourceType

Obbligatorio solo per Creare file e creare directory. Il valore deve essere "file" o "directory".

timeout
query

integer

int32

Valore facoltativo del 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

Media Types: "application/octet-stream"

Nome Necessario Tipo Descrizione
Cache-Control

string

facoltativo. Il servizio archivia questo valore e lo include nell'intestazione di risposta "Cache-Control" per le operazioni "Read File" per le operazioni "Read File".

Content-Encoding

string

facoltativo. Specifica le codifiche di contenuto applicate al file. Questo valore viene restituito al client quando viene eseguita l'operazione "Read File".

Content-Language

string

facoltativo. Specifica il linguaggio naturale usato dal pubblico previsto per il file.

Content-Disposition

string

facoltativo. Il servizio archivia questo valore e lo include nell'intestazione di risposta "Content-Disposition" per le operazioni "Read File".

x-ms-cache-control

string

facoltativo. Il servizio archivia questo valore e lo include nell'intestazione di risposta "Cache-Control" per le operazioni "Read File".

x-ms-content-type

string

facoltativo. Il servizio archivia questo valore e lo include nell'intestazione di risposta "Content-Type" per le operazioni "Read File".

x-ms-content-encoding

string

facoltativo. Il servizio archivia questo valore e lo include nell'intestazione di risposta "Codifica contenuto" per le operazioni "Read File".

x-ms-content-language

string

facoltativo. Il servizio archivia questo valore e lo include nell'intestazione di risposta "Content-Language" per le operazioni "Read File".

x-ms-content-disposition

string

facoltativo. Il servizio archivia questo valore e lo include nell'intestazione di risposta "Content-Disposition" per le operazioni "Read File".

x-ms-rename-source

string

File o directory facoltativi da rinominare. Il valore deve avere il formato seguente: "/{filesystem}/{path}" o "/{filesystem}/{path}?sastoken" quando si usa un token di firma di accesso condiviso. Se viene specificato "x-ms-properties", le proprietà sovrascriveranno le proprietà esistenti; in caso contrario, le proprietà esistenti verranno mantenute. Questo valore deve essere una stringa con codifica percentuale URL. Si noti che la stringa può contenere solo caratteri ASCII nel set di caratteri ISO-8859-1.

x-ms-lease-id

string

facoltativo. ID lease per il percorso specificato nell'URI. Il percorso da sovrascrivere deve avere un lease attivo e l'ID lease deve corrispondere.

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

x-ms-source-lease-id

string

Facoltativo per le operazioni di ridenominazione. ID lease per il percorso di origine. Il percorso di origine deve avere un lease attivo e l'ID lease deve corrispondere.

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

x-ms-properties

string

facoltativo. Proprietà definite dall'utente da archiviare con il file o la directory, nel formato di un elenco delimitato da virgole di coppie nome e valore "n1=v1, n2=v2, ...", dove ogni valore è una stringa codificata base64. Si noti che la stringa può contenere solo caratteri ASCII nel set di caratteri ISO-8859-1.

x-ms-permissions

string

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account. Imposta le autorizzazioni di accesso POSIX per il proprietario del file, il gruppo proprietario del file e altri. Ogni classe può essere concessa la lettura (4), la scrittura (2) o l'autorizzazione execute (1). Sono supportati sia la notazione simbolica (rwxrw-rw-) sia la notazione a 4 cifre (ad esempio 0766). Il bit bastone è supportato anche e nella notazione simbolica, rappresentato rispettivamente dalla lettera t o T nel punto di carattere finale a seconda che il bit di esecuzione per l'altra categoria sia impostato o unset rispettivamente (ad esempio rwxrw-rw- con bit sticky è rappresentato come rwxrw-rwT. Un rwxrw-rwx con bit bastone viene rappresentato come rwxrw-rwt), l'assenza di t o T indica un bit non impostato. Nella notazione ottale a 4 cifre, rappresentata dalla 1a cifra (ad esempio, 1766 rappresenta rwxrw-rw- con bit appiccicoso e 0766 rappresenta rwxrw-rw- senza bit appiccicosi). Non valido in combinazione con x-ms-acl.

x-ms-umask

string

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account. Quando si crea un file o una directory e la cartella padre non ha un elenco di controllo di accesso predefinito, l'umask limita le autorizzazioni del file o della directory da creare. L'autorizzazione risultante viene concessa da p & ^u, dove p è l'autorizzazione e si è l'umask. Ad esempio, se p è 0777 e si è 0057, l'autorizzazione risultante è 0720. L'autorizzazione predefinita è 0777 per una directory e 0666 per un file. L'umask predefinito è 0027. L'umask deve essere specificato nella notazione a 4 cifre (ad esempio 0766).

x-ms-owner

string

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account. Imposta il proprietario del file o della directory.

x-ms-group

string

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account. Imposta il gruppo proprietario del file o della directory.

x-ms-acl

string

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account. Imposta i diritti di controllo di accesso POSIX nei file e nelle directory. Ogni voce di controllo di accesso (ACE) è costituita da un ambito, un tipo, un identificatore di utente o gruppo e le autorizzazioni nel formato "[scope:][type]:[id]:[permissions]". L'ambito deve essere "predefinito" per indicare che l'ace appartiene all'ACL predefinito per una directory; in caso contrario, l'ambito è implicito e l'ACE appartiene all'ACL di accesso. Esistono quattro tipi ACE: "utente" concede diritti al proprietario o a un utente denominato, "group" concede diritti al gruppo proprietario o a un gruppo denominato, "mask" limita i diritti concessi agli utenti denominati e ai membri dei gruppi e "altri" concede diritti a tutti gli utenti non trovati in nessuna delle altre voci. L'identificatore utente o gruppo viene omesso per le voci di tipo "mask" e "other". L'identificatore utente o gruppo viene omesso anche per il proprietario e il gruppo di proprietà. Il campo autorizzazione è una sequenza di 3 caratteri in cui il primo carattere è 'r' per concedere l'accesso in lettura, il secondo carattere è 'w' per concedere l'accesso in scrittura e il terzo carattere è 'x' per concedere l'autorizzazione di esecuzione. Se l'accesso non viene concesso, il carattere '-' viene usato per indicare che l'autorizzazione viene negata. Ad esempio, l'ACL seguente concede diritti di lettura, scrittura ed esecuzione al proprietario del file e john.doe@contoso, il diritto di lettura al gruppo proprietario e nessun altro: "user::rwx,user:john.doe@contoso:rwx,group::r--,other::---,mask=rwx". Non valido in combinazione con x-ms-permissions.

x-ms-proposed-lease-id

string

facoltativo. Specificare un ID lease proposto se si vuole acquisire un lease durante la creazione di un file o di una directory. Un lease verrà acquisito con questo ID lease se la creazione ha esito positivo.

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

x-ms-expiry-option

string

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account e supportato solo nei file. Specificare una delle opzioni di scadenza seguenti se si vuole impostare l'ora di scadenza in un file durante la creazione. "RelativeToNow" Impostare la scadenza rispetto all'ora corrente. L'utente passerà il numero di millisecondi trascorsi da ora. Tempo assoluto in formato RFC 1123. "Neverexpire" Impostare il file in modo che non scada mai, la scadenza non deve essere specificata con questa opzione.

x-ms-expiry-time

string

Facoltativo e valido solo se lo spazio dei nomi gerarchico è abilitato per l'account e supportato solo nei file. Specificare l'ora di scadenza alla scadenza del file. Dato come RFC 1123 HTTP Time String o numero di millisecondi in base all'opzione di scadenza.

If-Match

string

facoltativo. Valore ETag. Specificare questa intestazione per eseguire l'operazione solo se il valore ETag della risorsa corrisponde al valore specificato. L'ETag deve essere specificato nelle virgolette.

If-None-Match

string

facoltativo. Valore ETag o carattere jolly speciale ("*"). Specificare questa intestazione per eseguire l'operazione solo se il valore ETag della risorsa non corrisponde al valore specificato. L'ETag deve essere specificato nelle virgolette.

If-Modified-Since

string

facoltativo. 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

facoltativo. 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-source-if-match

string

facoltativo. Valore ETag. Specificare questa intestazione per eseguire l'operazione di ridenominazione solo se l'ETag dell'origine corrisponde al valore specificato. L'ETag deve essere specificato nelle virgolette.

x-ms-source-if-none-match

string

facoltativo. Valore ETag o carattere jolly speciale ("*"). Specificare questa intestazione per eseguire l'operazione di ridenominazione solo se L'ETag dell'origine non corrisponde al valore specificato. L'ETag deve essere specificato nelle virgolette.

x-ms-source-if-modified-since

string

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

x-ms-source-if-unmodified-since

string

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

x-ms-encryption-key

string

facoltativo. Chiave di crittografia AES-256 con codifica Base64.

x-ms-encryption-key-sha256

string

facoltativo. Hash SHA256 con codifica Base64 della chiave di crittografia.

x-ms-encryption-algorithm: AES256

string

facoltativo. Specifica l'algoritmo da usare per la crittografia. Il valore di questa intestazione deve essere AES256.

x-ms-encryption-context

string

facoltativo. Il valore predefinito è "Vuoto". Se il valore è impostato, imposta i metadati BLOB/File system. Lunghezza massima- 1024. Valido solo quando lo spazio dei nomi gerarchico è abilitato per l'account.

x-ms-client-request-id

string

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

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

x-ms-date

string

Specifica la data per la richiesta nel fuso orario UTC (Coordinated Universal Time). Questa operazione è necessaria quando si usa l'autorizzazione della chiave condivisa.

x-ms-version

string

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

Risposte

Nome Tipo Descrizione
201 Created

È stato creato il file o la directory.

Headers

  • Date: string
  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-continuation: string
  • Content-Length: integer
  • x-ms-request-server-encrypted: true/false: boolean
  • x-ms-encryption-key-sha256: string
  • x-ms-encryption-scope: string
Other Status Codes

DataLakeStorageError

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

  • 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 fornite nel formato corretto. Controllare il valore dell'intestazione di autorizzazione.
  • 400 Richiesta non valida, InvalidFlushPosition, "I dati caricati non sono contigui o il valore del parametro di query di posizione non è uguale alla lunghezza del file dopo aver aggiunto i 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, "Il nome della proprietà non può essere vuoto".
  • 400 Richiesta non valida, InvalidPropertyName, "Il nome della proprietà contiene caratteri non validi".
  • 400 Richiesta non valida, InvalidQueryParameterValue, "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, "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, "Non sono supportate più intestazioni di condizione".
  • 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, Non supportatoQueryParameter, "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 Non consentito, AccountIsDisabled, "L'account specificato è disabilitato".
  • 403 Non consentito, AuthorizationFailure, "Questa richiesta non è autorizzata a eseguire questa operazione".
  • 403 Non consentito, InsufficientiAccountPermissions, "L'account a cui si accede non dispone di autorizzazioni sufficienti per eseguire questa operazione".
  • 404 Not Found, FilesystemNotFound, "Il file system specificato non esiste".
  • 404 Not Found, PathNotFound, "Il percorso specificato non esiste".
  • 404 Not Found, RenameDestinationParentPathNotFound, "La directory padre del percorso di destinazione non esiste".
  • 404 Not Found, ResourceNotFound, "La risorsa specificata non esiste".
  • 404 Not Found, SourcePathNotFound, "Percorso di origine per un'operazione di ridenominazione non esiste".
  • Metodo 405 Non consentito, Non supportatoHttpVerb, "La risorsa non supporta il verbo HTTP specificato".
  • 409 Conflitto, DestinationPathIsBeingDeleted, "Il percorso di destinazione specificato è contrassegnato per essere eliminato".
  • 409 Conflict, DirectoryNotEmpty, "Il valore del parametro di query ricorsivo deve essere true per eliminare una directory non vuota".
  • 409 Conflitto, FilesystemAlreadyExists, "Il file system specificato esiste già".
  • 409 Conflitto, FilesystemBeingDeleted, "Il file system specificato viene eliminato".
  • 409 Conflict, InvalidDestinationPath, "Il percorso specificato o un elemento del percorso, esiste e il relativo tipo di risorsa non è valido per questa operazione". * 409 Conflitto, InvalidFlushOperation, "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, "La directory di origine non può essere uguale alla directory di destinazione, né può essere una sottodirectory della directory di origine".
  • 409 Conflitto, InvalidSourceOrDestinationResourceType, "Il tipo di risorsa di origine e di destinazione deve essere identico".
  • 409 Conflitto, LeaseAlreadyPresent, "Esiste già un lease presente".
  • 409 Conflict, LeaseIdMismatchWithLeaseOperation, "L'ID lease specificato non corrispondeva 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 Conflitto, LeaseIsBreakingAndCannotBeAcquired, "L'ID lease corrisponde, ma il lease è attualmente in stato di interruzione e non può essere acquisito fino a quando non viene interrotto".
  • 409 Conflict, LeaseIsBreakingAndCannotBeChanged, "L'ID lease corrisponde, ma il lease è attualmente in stato di interruzione e non può essere modificato".
  • 409 Conflitto, LeaseIsBrokenAndCannotBeRenewed, "L'ID lease corrisponde, ma il lease è stato interrotto in modo esplicito e non può essere rinnovato".
  • 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 Conflitto, PathAlreadyExists, "Il percorso specificato esiste già".
  • 409 Conflict, PathConflict, "Il percorso specificato o un elemento del percorso, esiste e il relativo tipo di risorsa non è valido per questa operazione".
  • 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 di risorsa".
  • 412 Precondizione non riuscita, ConditionNotMet, "La condizione specificata usando 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 sulla risorsa e non è stato specificato alcun ID lease nella richiesta".
  • 412 Precondizione non riuscita, LeaseNotPresent, "Attualmente non è disponibile 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 usando 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. Ritentare la richiesta"
  • 500 Errori del server interno, OperationTimedOut, "Impossibile completare l'operazione entro il tempo consentito".
  • 503 Service Unavailable, ServerBusy, "Egress è oltre il limite di account".
  • 503 Service Non disponibile, ServerBusy, "Ingress è superiore al limite di account".
  • 503 Servizio Non disponibile, ServerBusy, "Le operazioni al secondo superano il limite di account".
  • Servizio 503 Non disponibile, ServerBusy, "Il server non è attualmente in grado di ricevere le richieste. Riprovare la richiesta."

Headers

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

Definizioni

Nome Descrizione
DataLakeStorageError
Error

Oggetto risposta di errore del servizio.

PathRenameMode

facoltativo. Valido solo quando lo spazio dei nomi è abilitato. Questo parametro determina il comportamento dell'operazione di ridenominazione. Il valore deve essere "legacy" o "posix" e il valore predefinito sarà "posix".

PathResourceType

Obbligatorio solo per Creare file e creare directory. Il valore deve essere "file" o "directory".

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.

PathRenameMode

facoltativo. Valido solo quando lo spazio dei nomi è abilitato. Questo parametro determina il comportamento dell'operazione di ridenominazione. Il valore deve essere "legacy" o "posix" e il valore predefinito sarà "posix".

Nome Tipo Descrizione
legacy

string

posix

string

PathResourceType

Obbligatorio solo per Creare file e creare directory. Il valore deve essere "file" o "directory".

Nome Tipo Descrizione
directory

string

file

string