Festlegen und Abrufen von Eigenschaften und Metadaten für Blobressourcen mithilfe von REST

Abgeschlossen

Container und BLOBs unterstützen als HTTP-Header dargestellte benutzerdefinierte Metadaten. Metadatenheader können für eine Anforderung festgelegt werden, die eine neue Container- oder BLOB-Ressource erstellt, oder für eine Anforderung, die explizit eine Eigenschaft für eine vorhandene Ressource erstellt.

Format der Metadatenheader

Metadatenheader sind Name-Wert-Paare. Das Format für den Header lautet:

x-ms-meta-name:string-value

Ab Version 2009-09-19 müssen Metadatennamen den Benennungsregeln für C#-Bezeichner entsprechen.

Bei Namen wird die Groß-/Kleinschreibung nicht berücksichtigt. Bei Metadatennamen wird die Groß-/Kleinschreibung beibehalten, mit der sie erstellt wurden. Beim Festlegen oder Lesen wird die Groß-/Kleinschreibung allerdings ignoriert. Wenn zwei oder mehr Metadatenheader mit dem gleichen Namen für eine Ressource übermittelt werden, gibt der Blob-Dienst den Statuscode 400 (Bad Request) zurück.

Die Metadaten bestehen aus Name-Wert-Paaren. Die Gesamtgröße aller Metadatenpaare kann bis zu 8 KB betragen.

Name-Wert-Paare für Metadaten sind gültige HTTP-Header und entsprechen daher allen Einschränkungen, die für HTTP-Header gelten.

Vorgänge für Metadaten

Metadaten für eine BLOB- oder Containerressource können direkt abgerufen oder festgelegt werden, ohne den Inhalt der Ressource zurückzugeben oder zu ändern.

Metadatenwerte können nur vollständig gelesen oder geschrieben werden. Teilweise Updates werden nicht unterstützt. Durch das Festlegen von Metadaten für eine Ressource werden alle vorhandenen Metadatenwerte für diese Ressource überschrieben.

Abrufen von Eigenschaften und Metadaten

Der GET/HEAD-Vorgang ruft Metadatenheader für den angegebenen Container oder Blob ab. Diese Vorgänge geben nur Header und keinen Antworttext zurück. Die URI-Syntax zum Abrufen von Metadatenheadern für einen Container lautet wie folgt:

GET/HEAD https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=metadata

Die URI-Syntax zum Abrufen von Metadatenheadern für ein BLOB lautet wie folgt:

GET/HEAD https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=metadata

Festlegen von Metadatenheadern

Der PUT-Vorgang legt Metadatenheader für den angegebenen Container oder das angegebene BLOB fest und überschreibt alle vorhandenen Metadaten für die Ressource. Durch den Aufruf von PUT ohne Header für die Anforderung werden alle vorhandenen Metadaten für die Ressource gelöscht.

Die URI-Syntax zum Festlegen von Metadatenheadern für einen Container lautet wie folgt:

PUT https://myaccount.blob.core.windows.net/mycontainer?comp=metadata&restype=container

Die URI-Syntax zum Festlegen von Metadatenheadern für ein BLOB lautet wie folgt:

PUT https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=metadata

HTTP-Standardeigenschaften für Container und Blobs

Container und BLOBs unterstützen auch bestimmte HTTP-Standardeigenschaften. Eigenschaften und Metadaten werden beide als HTTP-Standardheader dargestellt. Sie unterscheiden sich durch die Benennung der Header. Metadatenheader werden mit dem Headerpräfix x-ms-meta- und einem benutzerdefinierten Namen benannt. Für Eigenschaftsheader werden HTTP-Standardheadernamen verwendet, wie im Abschnitt 14, Definition von Headerfeldern, in der HTTP/1.1--Protokollspezifikation angegeben.

Zu den für Container unterstützten HTTP-Standardheadern gehören:

  • ETag
  • Last-Modified

Zu den für BLOBs unterstützten HTTP-Standardheadern gehören:

  • ETag
  • Last-Modified
  • Content-Length
  • Content-Type
  • Content-MD5
  • Content-Encoding
  • Content-Language
  • Cache-Control
  • Origin
  • Range