Erstellen der Datei

Mit dem Befehl Create File wird eine neue Datei erstellt oder eine alte Datei ersetzt. Wenn Sie aufrufen Create File, initialisieren Sie nur die Datei. Um einer Datei Inhalte hinzuzufügen, rufen Sie den Vorgang auf Put Range .

Protokollverfügbarkeit

Aktiviertes Dateifreigabeprotokoll Verfügbar
SMB Ja
NFS Nein

Anforderung

Sie können eine Create File Anforderung erstellen, indem Sie die folgenden Schritte ausführen. Es wird empfohlen, HTTPS zu verwenden.

Methode Anforderungs-URI HTTP-Version
PUT https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile HTTP/1.1

Ersetzen Sie die Pfadkomponenten, die im Anforderungs-URI angezeigt werden, durch Ihren eigenen, wie in der folgenden Tabelle beschrieben:

Pfadkomponente BESCHREIBUNG
myaccount Der Name Ihres Speicherkontos.
myshare Der Name der Dateifreigabe.
mydirectorypath Optional. Der Pfad zu dem Verzeichnis, in dem die Datei erstellt werden soll. Wenn der Verzeichnispfad fehlt, wird die Datei innerhalb der angegebenen Freigabe erstellt.

Wenn das Verzeichnis angegeben ist, muss es bereits innerhalb der Freigabe vorhanden sein, bevor Sie die Datei erstellen können.
myfile Der Name der zu erstellenden Datei.

Informationen zu Pfadbenennungseinschränkungen finden Sie unter Namens- und Verweisfreigaben, Verzeichnisse, Dateien und Metadaten.

URI-Parameter

Sie können im Anforderungs-URI die folgenden zusätzlichen Parameter angeben:

Parameter BESCHREIBUNG
timeout Optional. Der timeout-Parameter wird in Sekunden angegeben. Weitere Informationen finden Sie unter Festlegen von Timeouts für Dateidienstvorgänge.

Anforderungsheader

Die erforderlichen und optionalen Anforderungsheader werden in der folgenden Tabelle beschrieben:

Anforderungsheader BESCHREIBUNG
Authorization Erforderlich. Gibt das Autorisierungsschema, den Kontonamen und die Signatur an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage.
Date oder x-ms-date Erforderlich. Gibt die Uhrzeit der Anforderung in koordinierter Weltzeit (UTC) an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage.
x-ms-version Erforderlich für alle autorisierten Anforderungen. Gibt die Version des für die Anforderung zu verwendenden Vorgangs an. Weitere Informationen finden Sie unter Versionsverwaltung für die Azure-Speicherdienste.
Content-Length Optional. Muss 0 (null) sein, falls es vorhanden ist.
x-ms-content-length: byte value Erforderlich. Dieser Header gibt die maximale Größe für die Datei an, bis zu 4 Tebibytes (TiB).
Content-Type oder x-ms-content-type Optional. Der MIME-Inhaltstyp der Datei. Der Standardtyp ist application/octet-stream.
Content-Encoding oder x-ms-content-encoding Optional. Gibt an, welche Inhaltscodierungen auf die Datei angewendet wurden. Dieser Wert wird an den Client zurückgegeben, wenn der Vorgang Datei abrufen für die Dateiressource ausgeführt wird, und Sie können ihn zum Decodieren von Dateiinhalten verwenden.
Content-Language oder x-ms-content-language Optional. Gibt die natürlichen Sprachen an, die von dieser Ressource verwendet werden.
Cache-Control oder x-ms-cache-control Optional. Azure Files speichert diesen Wert, verwendet oder ändert ihn jedoch nicht.
x-ms-content-md5 Optional. Legt den MD5-Hash der Datei fest.
x-ms-content-disposition Optional. Legt den Header der Datei fest Content-Disposition .
x-ms-type: file Erforderlich. Legen Sie diesen Header auf file fest.
x-ms-meta-name:value Optional. Name-Wert-Paare, die der Datei als Metadaten zugeordnet sind. Metadatennamen müssen den Benennungsregeln für C#-Bezeichner entsprechen.

Hinweis: Auf Dateimetadaten, die über Azure Files angegeben werden, kann von einem SMB-Client (Server Message Block) nicht zugegriffen werden.
x-ms-file-permission: { inherit ¦ <SDDL> } In Version 2019-02-02 bis 2021-04-10 ist dieser Header erforderlich, wenn x-ms-file-permission-key nicht angegeben ist. Ab Version 2021-06-08 sind beide Header optional. Diese Berechtigung ist der Sicherheitsdeskriptor für die Datei, die in der Security Descriptor Definition Language (SDDL) angegeben ist. Sie können diesen Header verwenden, wenn die Berechtigungsgröße 8 Kibibytes (KiB) oder weniger beträgt. Andernfalls können Sie verwenden x-ms-file-permission-key. Wenn Sie den Header angeben, muss er über einen Besitzer, eine Gruppe und eine diskretionäre Zugriffssteuerungsliste (DACL) verfügen. Sie können einen Wert von inherit übergeben, um vom übergeordneten Verzeichnis zu erben.
x-ms-file-permission-key: <PermissionKey> In Version 2019-02-02 bis 2021-04-10 ist dieser Header erforderlich, wenn x-ms-file-permission nicht angegeben ist. Ab Version 2021-06-08 sind beide Header optional. Wenn keiner der Header angegeben ist, wird der Standardwert von inherit für den x-ms-file-permission Header verwendet.

Sie können den Schlüssel erstellen, indem Sie die Create Permission API aufrufen.
x-ms-file-attributes Erforderlich: Version 2019-02-02 bis 2021-04-10. Optional: Version 2021-06-08 und höher. Dieser Header enthält die Dateisystemattribute, die für die Datei festgelegt werden sollen. Weitere Informationen finden Sie in der Liste der verfügbaren Attribute. Standardwert: None.
x-ms-file-creation-time: { now ¦ <DateTime> } Erforderlich: Version 2019-02-02 bis 2021-04-10. Optional: Version 2021-06-08 und höher. Die UTC-Eigenschaft (Coordinated Universal Time) für die Datei. Der Wert kann now verwendet werden, um die Uhrzeit der Anforderung anzugeben. Standardwert: now.
x-ms-file-last-write-time: { now ¦ <DateTime> } Erforderlich: Version 2019-02-02 bis 2021-04-10. Optional: Version 2021-06-08 und höher. Die UTC-Eigenschaft (Coordinated Universal Time) beim letzten Schreibvorgang für die Datei. Sie können den Wert von now verwenden, um die Uhrzeit der Anforderung anzugeben. Standardwert: now.
x-ms-lease-id: <ID> Erforderlich, wenn die Datei über eine aktive Lease verfügt. Verfügbar für Version 2019-02-02 und höher.
x-ms-client-request-id Optional. Stellt einen vom Client generierten, undurchsichtigen Wert mit einem Zeichenlimit von 1 Kibibyte (KiB) bereit, der in den Protokollen aufgezeichnet wird, wenn die Protokollierung konfiguriert ist. Es wird dringend empfohlen, diesen Header zu verwenden, um clientseitige Aktivitäten mit Anforderungen zu korrelieren, die der Server empfängt. Weitere Informationen finden Sie unter Überwachen Azure Files.
x-ms-file-change-time: { now ¦ <DateTime> } Optional. Version 2021-06-08 und höher. Die UTC-Eigenschaft (Coordinated Universal Time) ändert die Zeit für die Datei im ISO 8601-Format. Sie können den Wert von now verwenden, um die Uhrzeit der Anforderung anzugeben. Standardwert: now.
x-ms-file-request-intent Erforderlich, wenn Authorization der Header ein OAuth-Token angibt. Zulässiger Wert ist backup. Dieser Header gibt an, dass oder Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/actionMicrosoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action gewährt werden soll, wenn sie in der RBAC-Richtlinie enthalten sind, die der Identität zugewiesen ist, die mithilfe des Authorization Headers autorisiert ist. Verfügbar für Version 2022-11-02 und höher.
x-ms-allow-trailing-dot: { <Boolean> } Optional. Version 2022-11-02 und höher. Der boolesche Wert gibt an, ob ein nachgestellter Punkt in der Anforderungs-URL gekürzt werden soll. Weitere Informationen finden Sie unter Benennen und Verweisen auf Freigaben, Verzeichnisse, Dateien und Metadaten.

Anforderungstext

Keine.

Beispiel für eine Anforderung

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=  
  

Antwort

Die Antwort enthält den HTTP-Statuscode und einen Satz von Antwortheadern.

Statuscode

Bei einem erfolgreichen Vorgang wird der Statuscode 201 (Erstellt) zurückgegeben.

Informationen zu status Codes finden Sie unter Status- und Fehlercodes.

Antwortheader

Die Antwort für diesen Vorgang enthält die Header, die in der folgenden Tabelle beschrieben werden. Die Antwort kann außerdem weitere HTTP-Standardheader enthalten. Alle Standardheader entsprechen der HTTP/1.1-Protokollspezifikation.

Antwortheader BESCHREIBUNG
ETag Das ETag enthält einen Wert, der die Version der Datei darstellt. Der Wert wird in Anführungszeichen eingeschlossen.
Last-Modified Gibt das Datum und die Uhrzeit der letzten Änderung der Datei zurück. Das Datumsformat entspricht RFC 1123. Weitere Informationen finden Sie unter Darstellen von Datums-/Uhrzeitwerten in Headern.

Bei jedem Vorgang, durch den das Verzeichnis, seine Eigenschaften oder seine Metadaten geändert werden, wird der Zeitpunkt der letzten Änderung aktualisiert. Vorgänge für Dateien wirken sich nicht auf den Zeitpunkt der letzten Änderung des Verzeichnisses aus.
x-ms-request-id Identifiziert die durchgeführte Anforderung eindeutig und kann für die Problembehandlung der Anforderung verwendet werden. Weitere Informationen finden Sie unter Problembehandlung für API-Vorgänge.
x-ms-version Gibt die Azure Files Version an, die zum Ausführen der Anforderung verwendet wird.
Date Ein UTC-Datums-/Uhrzeitwert, der vom Dienst generiert wird, der den Zeitpunkt angibt, zu dem die Antwort initiiert wurde.
x-ms-request-server-encrypted: true/false Version 2017-04-17 und höher. Der Wert dieses Headers wird auf true festgelegt, wenn Sie den Inhalt der Anforderung mithilfe des angegebenen Algorithmus erfolgreich verschlüsselt haben. Wenn die Verschlüsselung nicht erfolgreich ist, ist falseder Wert .
x-ms-file-permission-key Der Schlüssel der Berechtigung der Datei.
x-ms-file-attributes Die Dateisystemattribute für die Datei. Weitere Informationen finden Sie in der Liste der verfügbaren Attribute.
x-ms-file-creation-time Der UTC-Wert für Datum/Uhrzeit, der die Erstellungszeit-Eigenschaft für die Datei darstellt.
x-ms-file-last-write-time Der UTC-Wert für Datum/Uhrzeit, der die Eigenschaft zum letzten Schreibvorgang für die Datei darstellt.
x-ms-file-change-time Das UTC-Datum/Uhrzeit dieses Werts, der die Änderungszeiteigenschaft für die Datei darstellt.
x-ms-file-file-id Die Datei-ID der Datei.
x-ms-file-parent-id Die ID der übergeordneten Datei.
x-ms-client-request-id Wird für die Problembehandlung von Anforderungen und deren entsprechenden Antworten verwendet. Der Wert dieses Headers ist gleich dem Wert des x-ms-client-request-id Headers, wenn er in der Anforderung vorhanden ist und der Wert nicht mehr als 1.024 sichtbare ASCII-Zeichen enthält. Wenn der x-ms-client-request-id Header in der Anforderung nicht vorhanden ist, ist er in der Antwort nicht vorhanden.

Antworttext

Keine.

Beispiel für eine Antwort

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  

Authorization

Dieser Vorgang kann nur vom Kontobesitzer aufgerufen werden.

Dateisystemattribute

attribute Win32-Dateiattribute Definition
ReadOnly FILE_ATTRIBUTE_READONLY Eine datei, die schreibgeschützt ist. Anwendungen können die Datei lesen, aber nicht in sie schreiben oder löschen.
Ausgeblendet FILE_ATTRIBUTE_HIDDEN Die Datei ist ausgeblendet. Es ist nicht in einer gewöhnlichen Verzeichnisliste enthalten.
System FILE_ATTRIBUTE_SYSTEM Eine Datei, von der das Betriebssystem einen Teil oder ausschließlich verwendet.
Keine FILE_ATTRIBUTE_NORMAL Eine Datei, für die keine anderen Attribute festgelegt sind. Dieses Attribut ist nur gültig, wenn es allein verwendet wird.
Archivieren FILE_ATTRIBUTE_ARCHIVE Eine Datei, bei der es sich um eine Archivdatei handelt. Normalerweise verwenden Anwendungen dieses Attribut, um Dateien für die Sicherung oder Entfernung zu markieren.
Temporäre Prozeduren FILE_ATTRIBUTE_TEMPORARY Eine Datei, die für den temporären Speicher verwendet wird.
Offline FILE_ATTRIBUTE_OFFLINE Die Daten einer Datei sind nicht sofort verfügbar. Dieses Dateisystemattribute wird in erster Linie angezeigt, um die Kompatibilität mit Windows zu gewährleisten. Azure Files unterstützt es nicht mit Offlinespeicheroptionen.
NotContentIndexed FILE_ATTRIBUTE_NOT_CONTENT_INDEXED Die Datei soll nicht vom Inhaltsindizierungsdienst indiziert werden.
NoScrubData FILE_ATTRIBUTE_NO_SCRUB_DATA Der Benutzerdatenstrom, der nicht vom Hintergrunddatenintegritätsscanner gelesen werden soll. Dieses Dateisystemattribute wird in erster Linie angezeigt, um die Kompatibilität mit Windows zu gewährleisten.

Bemerkungen

Um eine neue Datei zu erstellen, initialisieren Sie sie zuerst, indem Sie die maximale Größe von bis zu 4 TiB aufrufen Create File und angeben. Wenn Sie diesen Vorgang ausführen, schließen Sie keinen Inhalt in den Anforderungstext ein. Nachdem Sie die Datei erstellt haben, rufen Sie Put Range auf, um der Datei Inhalte hinzuzufügen oder sie zu ändern.

Sie können die Größe der Datei ändern, indem Sie Set File Properties aufrufen.

Wenn die Freigabe oder das übergeordnete Verzeichnis nicht vorhanden ist, schlägt der Vorgang mit status Code 412 (Vorbedingung fehlgeschlagen) fehl.

Hinweis

Die Dateieigenschaften cache-control, content-type, content-md5, content-encodingund content-language sind getrennt von den Dateisystemeigenschaften, die für SMB-Clients verfügbar sind. SMB-Clients können diese Eigenschaftswerte nicht lesen, schreiben oder ändern.

Wenn die vorhandene Datei über eine aktive Lease verfügt, muss der Client eine gültige Lease-ID für die Anforderung angeben, um die Datei zu erstellen. Wenn der Client entweder keine Lease-ID oder eine ungültige Lease-ID angibt, gibt Azure Files status Code 412 (Vorbedingung fehlgeschlagen) zurück. Wenn der Client eine Lease-ID angibt, die Datei aber keine aktive Lease aufweist, gibt Azure Files auch in diesem instance status Code 412 (Vorbedingungsfehler) zurück. Wenn der Client eine Lease-ID für eine Datei angibt, die noch nicht vorhanden ist, gibt Azure Files status Code 412 (Vorbedingung fehlgeschlagen) für Anforderungen zurück, die für Die Version 2019-02-02 und höher gestellt werden.

Wenn eine vorhandene Datei mit einer aktiven Lease durch einen Create File Vorgang überschrieben wird, bleibt die Lease in der aktualisierten Datei erhalten, bis sie freigegeben wird.

Create Filewird nicht für eine Freigabe Momentaufnahme unterstützt, bei der es sich um eine schreibgeschützte Kopie einer Freigabe handelt. Ein Versuch, diesen Vorgang für eine Freigabe Momentaufnahme auszuführen, schlägt mit status Code 400 (InvalidQueryParameterValue) fehl.

Weitere Informationen

Vorgänge auf Azure Files