Crea file
L'operazione Create File
crea un nuovo file o sostituisce un file. Quando si chiama Create File
, si inizializza solo il file. Per aggiungere contenuto a un file, chiamare l'operazione di Put Range
.
Disponibilità del protocollo
Protocollo di condivisione file abilitato | Disponibile |
---|---|
SMB | |
NFS |
Richiesta
È possibile costruire una richiesta di Create File
eseguendo le operazioni seguenti. È consigliabile usare HTTPS.
Metodo | URI della richiesta | Versione HTTP |
---|---|---|
PUT |
https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile |
HTTP/1.1 |
Sostituire i componenti del percorso visualizzati nell'URI della richiesta con i propri, come descritto nella tabella seguente:
Componente percorso | Descrizione |
---|---|
myaccount |
Nome dell'account di archiviazione. |
myshare |
Nome della condivisione file. |
mydirectorypath |
Opzionale. Percorso della directory in cui deve essere creato il file. Se il percorso della directory viene omesso, il file verrà creato all'interno della condivisione specificata. Se la directory è specificata, deve esistere già all'interno della condivisione prima di poter creare il file. |
myfile |
Nome del file da creare. |
Per informazioni sulle restrizioni di denominazione dei percorsi, vedere Nome e condivisioni di riferimento, directory, file e metadati.
Parametri URI
È possibile specificare i parametri aggiuntivi seguenti nell'URI della richiesta:
Parametro | Descrizione |
---|---|
timeout |
Opzionale. Il parametro timeout è espresso in secondi. Per altre informazioni, vedere Impostare timeout per le operazioni del servizio file. |
Intestazioni della richiesta
Le intestazioni di richiesta obbligatorie e facoltative sono descritte nella tabella seguente:
Intestazione della richiesta | Descrizione |
---|---|
Authorization |
Obbligatorio. Specifica lo schema di autorizzazione, il nome dell'account e la firma. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure. |
Date o x-ms-date |
Obbligatorio. Specifica l'ora UTC (Coordinated Universal Time) per la richiesta. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure. |
x-ms-version |
Obbligatorio per tutte le richieste autorizzate. Specifica la versione dell'operazione da utilizzare per questa richiesta. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure. |
Content-Length |
Opzionale. Deve essere zero se presente. |
x-ms-content-length: byte value |
Obbligatorio. Questa intestazione specifica le dimensioni massime per il file, fino a 4 tebibyte (TiB). |
Content-Type o x-ms-content-type |
Opzionale. Tipo di contenuto MIME del file. Il tipo predefinito è application/octet-stream . |
Content-Encoding o x-ms-content-encoding |
Opzionale. Specifica le codifiche del contenuto applicate al file. Questo valore viene restituito al client quando l'operazione di Get File viene eseguita sulla risorsa file ed è possibile usarlo per decodificare il contenuto del file. |
Content-Language o x-ms-content-language |
Opzionale. Specifica i linguaggi naturali usati da questa risorsa. |
Cache-Control o x-ms-cache-control |
Opzionale. File di Azure archivia questo valore ma non lo usa o lo modifica. |
x-ms-content-md5 |
Opzionale. Imposta l'hash MD5 del file. |
x-ms-content-disposition |
Opzionale. Imposta l'intestazione Content-Disposition del file. |
x-ms-type: file |
Obbligatorio. Impostare questa intestazione su file . |
x-ms-meta-name:value |
Opzionale. Coppie nome-valore associate al file come metadati. I nomi dei metadati devono rispettare le regole di denominazione per gli identificatori C# . Nota: i metadati dei file specificati tramite File di Azure non sono accessibili da un client SMB (Server Message Block). |
x-ms-file-permission: { inherit ¦ <SDDL> ¦ <binary> } |
Nella versione 2019-02-02-2021-04-10, questa intestazione è obbligatoria se non viene specificato x-ms-file-permission-key . A partire dalla versione 2021-06-08, entrambe le intestazioni sono facoltative. Questa autorizzazione è il descrittore di sicurezza per il file specificato nel linguaggio SDDL (Security Descriptor Definition Language) o (versione 2024-11-04 o successiva) nel formato descrittore di sicurezza binario con codifica base64 formato descrittore di sicurezza binario. È possibile specificare il formato da usare con l'intestazione x-ms-file-permission-format . È possibile usare questa intestazione se le dimensioni delle autorizzazioni sono di 8 kibibyte (KiB) o meno. In caso contrario, è possibile usare x-ms-file-permission-key . Se si specifica l'intestazione, deve avere un proprietario, un gruppo e elenco di controllo di accesso discrezionale (DACL). È possibile passare un valore di inherit da ereditare dalla directory padre. |
x-ms-file-permission-format: { sddl ¦ binary } |
Opzionale. Versione 2024-11-04 o successiva. Specifica se il valore passato in x-ms-file-permission è in FORMATO SDDL o binario. Se x-ms-file-permission-key è impostato su inherit , questa intestazione non deve essere impostata. Se x-ms-file-permission-key è impostato su qualsiasi valore diverso da inherit e se questa intestazione non è impostata, viene utilizzato il valore predefinito di sddl . |
x-ms-file-permission-key: <PermissionKey> |
Nella versione 2019-02-02-2021-04-10, questa intestazione è obbligatoria se non viene specificato x-ms-file-permission . A partire dalla versione 2021-06-08, entrambe le intestazioni sono facoltative. Se non viene specificata alcuna intestazione, viene usato il valore predefinito di inherit per l'intestazione x-ms-file-permission .È possibile creare la chiave chiamando l'API Create Permission . |
x-ms-file-attributes |
Obbligatorio: dalla versione 2019-02-02 al 2021-04-10. Facoltativo: versione 2021-06-08 e successive. Questa intestazione contiene gli attributi del file system da impostare nel file. Per altre informazioni, vedere l'elenco degli attributi disponibili . Il valore predefinito è None . |
x-ms-file-creation-time: { now ¦ <DateTime> } |
Obbligatorio: dalla versione 2019-02-02 al 2021-04-10. Facoltativo: versione 2021-06-08 e successive. Proprietà ora UTC (Coordinated Universal Time) per il file. È possibile utilizzare un valore di now per indicare l'ora della richiesta. Il valore predefinito è now . |
x-ms-file-last-write-time: { now ¦ <DateTime> } |
Obbligatorio: dalla versione 2019-02-02 al 2021-04-10. Facoltativo: versione 2021-06-08 e successive. Ultima proprietà di scrittura utc (Coordinated Universal Time) per il file. È possibile usare un valore di now per indicare l'ora della richiesta. Il valore predefinito è now . |
x-ms-lease-id: <ID> |
Obbligatorio se il file ha un lease attivo. Disponibile per la versione 2019-02-02 e successive. |
x-ms-client-request-id |
Opzionale. Fornisce un valore opaco generato dal client con un limite di caratteri di 1 kibibyte (KiB) registrato nei log quando viene configurata la registrazione. È consigliabile usare questa intestazione per correlare le attività sul lato client alle richieste ricevute dal server. Per altre informazioni, vedere Monitorare File di Azure. |
x-ms-file-change-time: { now ¦ <DateTime> } |
Opzionale. Versione 2021-06-08 e successive. La proprietà Ora UTC (Coordinated Universal Time) cambia ora per il file, nel formato ISO 8601. È possibile usare un valore di now per indicare l'ora della richiesta. Il valore predefinito è now . |
x-ms-file-request-intent |
Obbligatorio se Authorization intestazione specifica un token OAuth. Il valore accettabile è backup . Questa intestazione specifica che il Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action o Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action deve essere concesso se sono inclusi nei criteri di controllo degli accessi in base al ruolo assegnati all'identità autorizzata usando l'intestazione Authorization . Disponibile per la versione 2022-11-02 e successive. |
x-ms-allow-trailing-dot: { <Boolean> } |
Opzionale. Versione 2022-11-02 e successive. Il valore booleano specifica se un punto finale presente nell'URL della richiesta deve essere tagliato o meno. Per altre informazioni, vedere Denominazione e riferimento a condivisioni, directory, file e metadati. |
Corpo della richiesta
Nessuno.
Richiesta di esempio
Request Syntax:
PUT https://myaccount.file.core.windows.net/myshare/myfile HTTP/1.1
Request Headers:
x-ms-version: 2020-02-10
x-ms-date: Mon, 27 Jan 2014 22:41:55 GMT
Content-Type: text/plain; charset=UTF-8
x-ms-content-length: 1024
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=
Risposta
La risposta include un codice di stato HTTP e un set di intestazioni di risposta.
Codice di stato
Un'operazione riuscita restituisce il codice di stato 201 (Creato).
Per informazioni sui codici di stato, vedere Stato e codici di errore.
Intestazioni di risposta
La risposta per questa operazione include le intestazioni descritte nella tabella seguente. La risposta può includere anche intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1 .
Intestazione della risposta | Descrizione |
---|---|
ETag |
L'ETag contiene un valore che rappresenta la versione del file. Il valore è racchiuso tra virgolette. |
Last-Modified |
Restituisce la data e l'ora dell'ultima modifica del file. Il formato della data segue RFC 1123. Per altre informazioni, vedere Rappresentare valori di data/ora nelle intestazioni. Qualsiasi operazione che modifica la directory o le relative proprietà aggiorna l'ora dell'ultima modifica. Le operazioni sui file non influiscono sull'ora dell'ultima modifica della directory. |
x-ms-request-id |
Identifica in modo univoco la richiesta effettuata e può essere usata per la risoluzione dei problemi della richiesta. Per altre informazioni, vedere Risolvere i problemi relativi alle operazioni API |
x-ms-version |
Indica la versione di File di Azure usata per eseguire la richiesta. |
Date |
Valore di data/ora UTC generato dal servizio, che indica l'ora di avvio della risposta. |
x-ms-request-server-encrypted: true/false |
Versione 2017-04-17 e successive. Il valore di questa intestazione è impostato su true se il contenuto della richiesta è stato crittografato correttamente usando l'algoritmo specificato. Se la crittografia non riesce, il valore viene false . |
x-ms-file-permission-key |
Chiave dell'autorizzazione del file. |
x-ms-file-attributes |
Attributi del file system nel file. Per altre informazioni, vedere l'elenco degli attributi disponibili . |
x-ms-file-creation-time |
Valore di data/ora UTC che rappresenta la proprietà dell'ora di creazione per il file. |
x-ms-file-last-write-time |
Valore di data/ora UTC che rappresenta la proprietà dell'ora dell'ultima scrittura per il file. |
x-ms-file-change-time |
Data/ora UTC che rappresenta la proprietà dell'ora di modifica per il file. |
x-ms-file-file-id |
ID file del file. |
x-ms-file-parent-id |
ID file padre del file. |
x-ms-client-request-id |
Usato per risolvere i problemi relativi alle richieste e alle risposte corrispondenti. Il valore di questa intestazione è uguale al valore dell'intestazione x-ms-client-request-id se è presente nella richiesta e il valore non contiene più di 1.024 caratteri ASCII visibili. Se l'intestazione x-ms-client-request-id non è presente nella richiesta, non è presente nella risposta. |
Corpo della risposta
Nessuno.
Risposta di esempio
Response Status:
HTTP/1.1 201 Created
Response Headers:
Transfer-Encoding: chunked
Date: Mon, 27 Jan 2014 23:00:12 GMT
ETag: "0x8CB14C3E29B7E82"
Last-Modified: Mon, 27 Jan 2014 23:00:06 GMT
x-ms-version: 2014-02-14
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
Autorizzazione
Solo il proprietario dell'account può chiamare questa operazione.
Attributi del file system
Attributo | Attributo del file Win32 | Definizione |
---|---|---|
ReadOnly | FILE_ATTRIBUTE_READONLY | File di sola lettura. Le applicazioni possono leggere il file, ma non possono scriverlo o eliminarlo. |
Nascosto | FILE_ATTRIBUTE_HIDDEN | Il file è nascosto. Non è incluso in un elenco di directory normale. |
Sistema | FILE_ATTRIBUTE_SYSTEM | File utilizzato esclusivamente dal sistema operativo. |
Nessuno | FILE_ATTRIBUTE_NORMAL | File che non ha altri attributi impostati. Questo attributo è valido solo se usato da solo. |
Archivio | FILE_ATTRIBUTE_ARCHIVE | File che rappresenta un file di archivio. Le applicazioni usano in genere questo attributo per contrassegnare i file per il backup o la rimozione. |
Provvisorio | FILE_ATTRIBUTE_TEMPORARY | File usato per l'archiviazione temporanea. |
Off-line | FILE_ATTRIBUTE_OFFLINE | I dati di un file non sono immediatamente disponibili. Questo attributo del file system viene presentato principalmente per garantire la compatibilità con Windows. File di Azure non lo supporta con le opzioni di archiviazione offline. |
NotContentIndexed | FILE_ATTRIBUTE_NOT_CONTENT_INDEXED | Il file non deve essere indicizzato dal servizio di indicizzazione del contenuto. |
NoScrubData | FILE_ATTRIBUTE_NO_SCRUB_DATA | Il flusso di dati utente non essere letto dallo scanner di integrità dei dati in background. Questo attributo del file system viene presentato principalmente per garantire la compatibilità con Windows. |
Osservazioni
Per creare un nuovo file, inizializzarlo prima chiamando Create File
e specificandone le dimensioni massime, fino a 4 TiB. Quando si esegue questa operazione, non includere il contenuto nel corpo della richiesta. Dopo aver creato il file, chiamare Put Range
per aggiungere contenuto al file o modificarlo.
È possibile modificare le dimensioni del file chiamando Set File Properties
.
Se la condivisione o la directory padre non esiste, l'operazione ha esito negativo con codice di stato 412 (precondizione non riuscita).
Nota
Le proprietà del file cache-control
, content-type
, content-md5
, content-encoding
e content-language
sono separate dalle proprietà del file system disponibili per i client SMB. I client SMB non sono in grado di leggere, scrivere o modificare questi valori di proprietà.
Per creare il file, se il file esistente ha un lease attivo, il client deve specificare un ID lease valido nella richiesta. Se il client non specifica un ID lease o specifica un ID lease non valido, File di Azure restituisce il codice di stato 412 (Precondizione non riuscita). Se il client specifica un ID lease ma il file non ha un lease attivo, Anche File di Azure restituisce il codice di stato 412 (Precondizione non riuscita) in questa istanza. Se il client specifica un ID lease in un file che non esiste ancora, File di Azure restituisce il codice di stato 412 (Precondizione non riuscita) per le richieste effettuate rispetto alla versione 2019-02-02 e successive.
Se un file esistente con un lease attivo viene sovrascritto da un'operazione di Create File
, il lease persiste nel file aggiornato fino al rilascio.
Create File
non è supportato in uno snapshot di condivisione, ovvero una copia di sola lettura di una condivisione. Un tentativo di eseguire questa operazione su uno snapshot di condivisione non riesce con codice di stato 400 (InvalidQueryParameterValue).
Vedere anche
operazioni di in File di Azure