Objektoperationen
Die modernen Funktionen von IBM Cloud® Object Storage sind bequem über eine RESTful-API verfügbar. Operationen und Methoden zum Lesen, Schreiben und Konfigurieren von Objekten (in einem Bucket gespeichert) sind hier dokumentiert.
Weitere Informationen zu Endpunkten enthält Endpunkte und Speicherpositionen.
Hinweis zur HMAC-Authentifizierung (HMAC = Access/Secret Key)
Bei der Authentifizierung bei Ihrer Instanz von IBM Cloud Object Storage mithilfe von HMAC-Berechtigungsnachweisen benötigen Sie die in Tabelle 1 dargestellten Informationen, wenn Sie eine HMAC-Signatur erstellen.
| Schlüssel | Wert | Beispiel |
|---|---|---|
| {access_key} | Ihrer Dienstanmeldeinformation zugewiesener Zugriffsschlüssel | cf4965cebe074720a4929759f57e1214 |
| {date} | Das formatierte Datum Ihrer Anforderung (yyyymmdd). |
20180613 |
| {region} | Der Positionscode für Ihren Endpunkt. | US-Standard |
| {signature} | Der Hashwert, der mit dem geheimen Schlüssel, der Position und dem Datum erstellt wurde | ffe2b6e18f9dcc41f593f4dbb39882a6bb4d26a73a04326e62a8d344e07c1a3e |
| {timestamp} | Das formatierte Datum und die formatierte Uhrzeit Ihrer Anfrage. | 20180614T001804Z |
Objekt hochladen
Mit einer PUT-Anforderung, in der ein Pfad zu einem Objekt angegeben wurde, wird der Anforderungshauptteil als Objekt hochgeladen. Alle in einem Einzelthread hochgeladenen Objekte sollten kleiner als 500 MB sein, um das Risiko von
Netzunterbrechungen zu minimieren. (Objekte, die in mehreren Teilen hochgeladen werden, können bis zu 10 TB groß sein)
Persönlich identifizierbare Informationen (PII): Verwenden Sie bei der Benennung von Buckets oder Objekten keine Informationen, die einen Benutzer (natürliche Person) anhand seines Namens, seines Standorts oder anderer Merkmale identifizieren könnten.
Es ist möglich, Objekte mit einer Größe von 5 GB mithilfe einer einzigen PUT-Anforderung zu streamen. Mehrteilige Uploads sind zuverlässiger und können effizienter hochgeladen werden, indem mehrere Threads zum parallelen Hochladen
von Teilen verwendet werden. Das Hochladen größerer Objekte in einer einzelnen PUT-Anforderung führt zu den Leistungseinschränkungen eines einzelnen Threads und im Falle von Fehlern müssen Uploads mit einem einzelnen Thread vollständig
wiederholt werden (während bei MPU nur die einzelnen Teile wiederholt werden müssen, die fehlgeschlagen sind). Der genaue Durchsatz, der mit einem einzelnen Thread erreicht werden kann, hängt von der Netzwerkbandbreite zwischen dem Client
und dem Endpunkt IBM Cloud, der Rate der Paketverluste (falls vorhanden) bei dieser Verbindung, der Verwendung von HTTP gegenüber HTTPS, den spezifischen Verschlüsselungsalgorithmen, die bei der Verbindung verwendet werden, und spezifischen
TCP-Verbindungsparametern (wie der Fenstergröße) sowie anderen Faktoren ab. Diese Faktoren können zwar für einen Single-Thread-Upload optimiert werden, die Optimierungen gelten jedoch auch für alle Multithread-Uploads (mehrteilige Uploads).
Persönlich identifizierbare Informationen (PII): Achten Sie beim Erstellen von Buckets oder Hinzufügen von Objekten darauf, keine Informationen zu verwenden, die einen Benutzer (natürliche Person) anhand seines Namens, Standorts oder auf andere Weise identifizieren können.
Syntax
PUT https://{endpoint}/{bucket-name}/{object-name} # path style
PUT https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
x-amz-tagging |
Zeichenfolge | Eine Gruppe von Tags, die auf das Objekt angewendet werden sollen, formatiert als Abfrageparameter ("SomeKey=SomeValue"). |
x-amz-object-lock-mode |
Zeichenfolge | Gültiger Wert ist COMPLIANCE oder GOVERNANCE – erforderlich, wenn x-amz-object-lock-retain-until-date vorhanden ist. |
x-amz-object-lock-retain-until-date |
ISO8601 Datum und Uhrzeit | Erforderlich, wenn x-amz-object-lock-mode vorhanden ist. |
x-amz-object-lock-legal-hold |
Zeichenfolge | Die gültigen Werte sind ON oder OFF. |
Content-MD5 |
Zeichenfolge | Der 128-Bit- MD5-Hashwert der Nutzlast, der mit dem Standard „ Base64 “ verschlüsselt wurde, dient als Integritätsprüfung, um sicherzustellen, dass die Nutzlast während der Übertragung nicht verändert wurde. |
x-amz-checksum-crc32 |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32 Prüfsumme des Objekts. |
x-amz-checksum-crc32c |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32C Prüfsumme des Objekts. |
x-amz-checksum-crc64nvme |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 64-Bit CRC64NVME Prüfsumme des Objekts. Die Prüfsumme CRC64NVME ist immer eine vollständige Objektprüfsumme. |
x-amz-checksum-sha1 |
Zeichenfolge | Dieser Header ist der Base64 verschlüsselte 160-Bit-Digest des Objekts SHA1. |
x-amz-checksum-sha256 |
Zeichenfolge | Dieser Header ist der Base64 kodierte, 256-Bit SHA256 Digest des Objekts. |
x-amz-sdk-checksum-algorithm |
Zeichenfolge | Gibt den Algorithmus an, der bei Verwendung des SDK zur Erstellung der Prüfsumme für das Objekt verwendet wird. |
x-amz-trailer |
Zeichenfolge | Gibt an, welcher Prüfsummenwert-Header im Trailer der Nutzlast gefunden wird, um die Integrität des Objekts beim Hochladen zu überprüfen. |
Beispielanforderung
PUT /apiary/queen-bee HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain; charset=utf-8
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 533
The 'queen' bee is developed from larvae selected by worker bees and fed a
substance referred to as 'royal jelly' to accelerate sexual maturity. After a
short while the 'queen' is the mother of nearly every bee in the hive, and
the colony will fight fiercely to protect her.
Beispielanforderung
PUT /apiary/queen-bee HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
x-amz-content-sha256: {payload_hash}
Content-Type: text/plain; charset=utf-8
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 533
The 'queen' bee is developed from larvae selected by worker bees and fed a
substance referred to as 'royal jelly' to accelerate sexual maturity. After a
short while the 'queen' is the mother of nearly every bee in the hive, and
the colony will fight fiercely to protect her.
Beispielantwort
HTTP/1.1 200 OK
Date: Thu, 25 Aug 2016 18:30:02 GMT
X-Clv-Request-Id: 9f0ca49a-ae13-4d2d-925b-117b157cf5c3
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.121
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f0ca49a-ae13-4d2d-925b-117b157cf5c3
ETag: "3ca744fa96cb95e92081708887f63de5"
x-amz-checksum-crc64nvme: T1r5SUWc07k=
x-amz-checksum-type: FULL_OBJECT
Content-Length: 0
Header eines Objekts abrufen
Mit einer HEAD-Anforderung, in der ein Pfad zu einem Objekt angegeben wurde, werden die Header des betreffenden Objekts abgerufen.
Der Etag für mit SSE-KP verschlüsselte Objekte zurückgegebene Wert ist der MD5-Hash des ursprünglichen entschlüsselten Objekts.
Syntax
HEAD https://{endpoint}/{bucket-name}/{object-name} # path style
HEAD https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
x-amz-checksum-mode |
Zeichenfolge | Hier wird angegeben, ob die Antwort Prüfsummen-Metadaten enthalten soll oder nicht. |
Beispielanforderung
HEAD /apiary/soldier-bee HTTP/1.1
Authorization: Bearer {token}
Host: s3-api.sjc-us-geo.objectstorage.s3.us-south.cloud-object-storage.appdomain.cloud.net
Beispielanforderung
HEAD /apiary/soldier-bee HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 200 OK
Date: Thu, 25 Aug 2016 18:32:44 GMT
X-Clv-Request-Id: da214d69-1999-4461-a130-81ba33c484a6
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.121
X-Clv-S3-Version: 2.5
x-amz-request-id: da214d69-1999-4461-a130-81ba33c484a6
ETag: "37d4c94839ee181a2224d6242176c4b5"
x-amz-checksum-crc64nvme: T1r5SUWc07k=
x-amz-checksum-type: FULL_OBJECT
Content-Type: text/plain; charset=UTF-8
Last-Modified: Thu, 25 Aug 2016 17:49:06 GMT
Content-Length: 11
Objekt herunterladen
Mit einer GET-Anforderung, in der ein Pfad zu einem Objekt angegeben wurde, wird das betreffende Objekt heruntergeladen.
Der Wert für Etag, der für Objekte zurückgegeben wird, die mit SSE-C/SSE-KP verschlüsselt wurden, stimmt nicht mit dem MD5-Hashwert des ursprünglichen entschlüsselten Objekts überein.
Syntax
GET https://{endpoint}/{bucket-name}/{object-name} # path style
GET https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
range |
Zeichenfolge | Gibt die Byte eines Objekts innerhalb des angegebenen Bereichs zurück. |
x-amz-checksum-mode |
Zeichenfolge | Hier wird angegeben, ob die Antwort Prüfsummen-Metadaten enthalten soll oder nicht. |
Beispielanforderung
GET /apiary/worker-bee HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielanforderung
GET /apiary/worker-bee HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 200 OK
Date: Thu, 25 Aug 2016 18:34:25 GMT
X-Clv-Request-Id: 116dcd6b-215d-4a81-bd30-30291fa38f93
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.121
X-Clv-S3-Version: 2.5
x-amz-request-id: 116dcd6b-215d-4a81-bd30-30291fa38f93
ETag: "d34d8aada2996fc42e6948b926513907"
Content-Type: text/plain; charset=UTF-8
Last-Modified: Thu, 25 Aug 2016 17:46:53 GMT
Content-Length: 467
Female bees that are not fortunate enough to be selected to be the 'queen'
while they were still larvae become known as 'worker' bees. These bees lack
the ability to reproduce and instead ensure that the hive functions smoothly,
acting almost as a single organism in fulfilling their purpose.
Objekt löschen
Mit einer DELETE-Anforderung, in der ein Pfad zu einem Objekt angegeben wurde, wird das betreffende Objekt gelöscht.
Syntax
DELETE https://{endpoint}/{bucket-name}/{object-name} # path style
DELETE https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Beispielanforderung
DELETE /apiary/soldier-bee HTTP/1.1
Authorization: Bearer {token}
Host: s3-api.sjc-us-geo.objectstorage.s3.us-south.cloud-object-storage.appdomain.cloud.net
Beispielanforderung
DELETE /apiary/soldier-bee HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 204 No Content
Date: Thu, 25 Aug 2016 17:44:57 GMT
X-Clv-Request-Id: 8ff4dc32-a6f0-447f-86cf-427b564d5855
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.121
X-Clv-S3-Version: 2.5
x-amz-request-id: 8ff4dc32-a6f0-447f-86cf-427b564d5855
Mehrere Objekte löschen
Mit einer POST-Anforderung, in der ein Pfad zu einem Bucket und die korrekten Parameter angegeben sind, wird eine angegebene Objektgruppe gelöscht. Ein Content-MD5-Header oder ein checksum-Header (einschließlich
x-amz-checksum-crc32, x-amz-checksum-crc32c, x-amz-checksum-crc64nvme, x-amz-checksum-sha1 oder x-amz-checksum-sha256) ist als Integritätsprüfung für die Nutzdaten erforderlich.
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
Content-MD5 |
Zeichenfolge | Der 128-Bit- MD5-Hash der Nutzlast, der mit dem Standard „ base64 “ verschlüsselt wurde, dient als Integritätsprüfung, um sicherzustellen, dass die Nutzlast während der Übertragung nicht verändert wurde. |
x-amz-checksum-crc32 |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32 Prüfsumme des Objekts. |
x-amz-checksum-crc32c |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32C Prüfsumme des Objekts. |
x-amz-checksum-crc64nvme |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 64-Bit CRC64NVME Prüfsumme des Objekts. Die Prüfsumme CRC64NVME ist immer eine vollständige Objektprüfsumme. |
x-amz-checksum-sha1 |
Zeichenfolge | Dieser Header ist der Base64 verschlüsselte 160-Bit-Digest des Objekts SHA1. |
x-amz-checksum-sha256 |
Zeichenfolge | Dieser Header ist der Base64 kodierte, 256-Bit SHA256 Digest des Objekts. |
Wenn ein in der Anfrage angegebenes Objekt nicht gefunden wird, wird das Ergebnis als gelöscht zurückgegeben.
Zum Löschen mehrerer Objekte gehört ein POST operation, der als Klasse A berechnet wird. Der Aufwand für die POST-Anforderung für mehrere Löschungen variiert abhängig von der Speicherklasse der Objekte und dem Datenvolumen,
das gelöscht wird. Weitere Informationen zu den Preisen finden Sie auf der Preisseite von „ IBM Cloud Object Storage “.
Optionale Elemente
| Überschrift | Typ | Beschreibung |
|---|---|---|
Quiet |
Boolescher Wert | Für die Anforderung wird der Befehlszeilenmodus aktiviert. |
Die Anforderung kann maximal 1000 Schlüssel enthalten, die gelöscht werden sollen. Obwohl dies nützlich ist, um die Anzahl der Anforderungen zu reduzieren, müssen Sie beim Löschen einer großen Anzahl von Schlüsseln mit Bedacht vorgehen. Berücksichtigen Sie auch die Größen der Objekte, um eine geeignete Leistung zu gewährleisten.
Der folgende Code zeigt ein Beispiel für die Erstellung der erforderlichen Darstellung des Headerinhalts:
echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64
Syntax
POST https://{endpoint}/{bucket-name}?delete= # path style
POST https://{bucket-name}.{endpoint}?delete= # virtual host style
Der Hauptteil der Anforderung muss einen XML-Block mit dem folgenden Schema enthalten:
| Element | Typ | Untergeordnete Elemente | Vorfahre | Einschränkung |
|---|---|---|---|---|
| Löschen | Container | Object |
|
|
| Object | Container | Schlüssel | Löschen |
|
| Schlüssel | Zeichenfolge |
|
Object | Gültige Schlüsselzeichenfolge |
Beispielanforderung
POST /apiary?delete= HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Type: text/plain; charset=utf-8
Content-MD5: xj/vf7lD7vbIe/bqHTaLvg==
Beispielanforderung
POST /apiary?delete= HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain; charset=utf-8
Content-MD5: xj/vf7lD7vbIe/bqHTaLvg==
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 200 OK
Date: Wed, 30 Nov 2016 18:54:53 GMT
X-Clv-Request-Id: a6232735-c3b7-4c13-a7b2-cd40c4728d51
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.137
X-Clv-S3-Version: 2.5
x-amz-request-id: a6232735-c3b7-4c13-a7b2-cd40c4728d51
Content-Type: application/xml
Content-Length: 207
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DeleteResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Deleted>
<Key>surplus-bee</Key>
</Deleted>
<Deleted>
<Key>unnecessary-bee</Key>
</Deleted>
</DeleteResult>
Aufbewahrungsfrist für ein Objekt hinzufügen oder aktualisieren
Ein, das mit den richtigen PUT Parametern an ein Objekt ausgegeben wird, fügt die Aufbewahrungsfrist hinzu oder verlängert sie. Im COMPLIANCE Modus kann die Aufbewahrungsfrist nur verlängert, nicht jedoch verkürzt oder
aufgehoben werden. Im GOVERNANCE Modus können autorisierte Benutzer die Aufbewahrungsfrist verlängern, verkürzen oder aufheben, indem sie den x-amz-bypass-governance-retention Header einfügen.
Syntax
PUT https://{endpoint}/{bucket-name}/{object-name}?retention # path style
PUT https://{bucket-name}.{endpoint}/{object-name}?retention # virtual host style
Nutzdatenelemente
Der Hauptteil der Anforderung muss einen XML-Block mit dem folgenden Schema enthalten:
| Element | Typ | Untergeordnete Elemente | Vorfahre | Anmerkungen |
|---|---|---|---|---|
| Aufbewahrungsdauer | Container | Modus, RetainUntilDate |
|
Erforderlich |
| Modus | Zeichenfolge |
|
Aufbewahrungsdauer | Erforderlich – gültiger Wert ist COMPLIANCE oder GOVERNANCE |
| RetainUntilDate | Timestamp |
|
Aufbewahrungsdauer | Erforderlich |
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
x-amz-bypass-governance-retention |
Zeichenfolge | Dieser Header ermöglicht es autorisierten Benutzern, die Aufbewahrungseinstellungen im GOVERNANCE-Modus zu überschreiben, um ein Objekt vor Ablauf seiner Aufbewahrungsfrist zu löschen oder zu ändern. |
Der folgende Code zeigt ein Beispiel für die Erstellung der erforderlichen Darstellung des Headerinhalts:
echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64
Beispielanforderung
Dies ist ein Beispiel für das Hinzufügen oder Erweitern der Aufbewahrungsdauer für ein Objekt.
PUT /apiary/myObject?retention HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Content-MD5: cDeRJIdLuEXWmLpA79K2kg==
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 119
<Retention>
<Mode>COMPLIANCE</Mode>
<RetainUntilDate>2023-04-12T23:01:00.000Z</RetainUntilDate>
</Retention>
Beispielantwort
HTTP/1.1 200 OK
Date: Wed, 5 Oct 2020 15:39:38 GMT
X-Clv-Request-Id: 7afca6d8-e209-4519-8f2c-1af3f1540b42
Accept-Ranges: bytes
Content-Length: 0
Objekt kopieren
Mit einer PUT-Anforderung, in der ein Pfad zu einem neuen Objekt angegeben ist, wird eine neue Kopie eines anderen Objekts erstellt, das im Header x-amz-copy-source angegeben ist. Sofern die Metadaten nicht an anderer
Stelle geändert wurden, bleiben diese gleich.
Persönlich identifizierbare Informationen (PII): Verwenden Sie bei der Benennung von Buckets oder Objekten keine Informationen, die einen Benutzer (natürliche Person) anhand seines Namens, seines Standorts oder anderer Merkmale identifizieren könnten.
Für das Kopieren von Objekten (auch standortübergreifend) fallen keine Gebühren für die öffentliche Bandbreite für abgehende Daten an. Alle Daten verbleiben im internen COS-Netz.
Syntax
PUT https://{endpoint}/{bucket-name}/{object-name} # path style
PUT https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
x-amz-metadata-directive |
Zeichenfolge (COPY oder REPLACE) |
Mit einer Anweisung REPLACE werden die ursprünglichen Metadaten mit den neu angegebenen Metadaten überschrieben. |
x-amz-tagging |
Zeichenfolge | Eine Gruppe von Tags, die auf das Objekt angewendet werden sollen, formatiert als Abfrageparameter ("SomeKey=SomeValue"). |
x-amz-tagging-directive |
Zeichenfolge (COPY oder REPLACE) |
A REPLACE überschreibt die ursprünglichen Tags mit den neuen Tags, die bereitgestellt werden. |
x-amz-copy-source-if-match |
Zeichenfolge (ETag) |
Erstellt eine Kopie, wenn der angegebene ETag mit dem Quellenobjekt übereinstimmt. |
x-amz-copy-source-if-none-match |
Zeichenfolge (ETag) |
Erstellt eine Kopie, wenn sich der angegebene ETag vom Quellenobjekt unterscheidet. |
x-amz-copy-source-if-unmodified-since |
Zeichenfolge (Zeitmarke) | Erstellt eine Kopie, wenn das Quellenobjekt seit dem angegebenen Datum nicht mehr geändert wurde. Als Datum muss ein gültiges HTTP-Datum (z. B. Wed, 30 Nov 2016 20:21:38 GMT) angegeben werden. |
x-amz-copy-source-if-modified-since |
Zeichenfolge (Zeitmarke) | Erstellt eine Kopie, wenn das Quellenobjekt seit dem angegebenen Datum geändert wurde. Als Datum muss ein gültiges HTTP-Datum (z. B. Wed, 30 Nov 2016 20:21:38 GMT) angegeben werden. |
x-amz-checksum-algorithm |
Zeichenfolge | Gibt an, welcher Prüfsummenalgorithmus zur Erstellung der Prüfsumme für das Zielobjekt verwendet werden soll. |
Beispielanforderung
Dieses Basisbeispiel verwendet das Objekt bee aus dem Bucket garden und erstellt im Bucket apiary eine Kopie mit dem neuen Schlüssel wild-bee.
PUT /apiary/wild-bee HTTP/1.1
Authorization: Bearer {token}
x-amz-copy-source: /garden/bee
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielanforderung
PUT /apiary/wild-bee HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
x-amz-copy-source: /garden/bee
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 200 OK
Date: Wed, 30 Nov 2016 19:52:52 GMT
X-Clv-Request-Id: 72992a90-8f86-433f-b1a4-7b1b33714bed
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.137
X-Clv-S3-Version: 2.5
x-amz-request-id: 72992a90-8f86-433f-b1a4-7b1b33714bed
ETag: "853aab195ce770b0dfb294a4e9467e62"
Content-Type: application/xml
Content-Length: 240
<CopyObjectResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<LastModified>2016-11-30T19:52:53.125Z</LastModified>
<ETag>"853aab195ce770b0dfb294a4e9467e62"</ETag>
</CopyObjectResult>
CORS-Konfiguration eines Objekts überprüfen
Mit einer OPTIONS-Anforderung, in der ein Pfad zu einem Objekt zusammen mit einer Ursprungsangabe und dem Anforderungstyp angegeben ist, wird überprüft, ob auf dieses Objekt mit diesem Anforderungstyp über den betreffenden Ursprung
zugegriffen werden kann. Anders als bei allen anderen Anforderungen ist für eine OPTIONS-Anforderung der Header authorization oder x-amx-date nicht erforderlich.
Syntax
OPTIONS https://{endpoint}/{bucket-name}/{object-name} # path style
OPTIONS https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Beispielanforderung
OPTIONS /apiary/queen-bee HTTP/1.1
Access-Control-Request-Method: PUT
Origin: http://ibm.com
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielanforderung
OPTIONS /apiary/queen-bee HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Access-Control-Request-Method: PUT
Origin: http://ibm.com
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 200 OK
Date: Wed, 07 Dec 2016 16:23:14 GMT
X-Clv-Request-Id: 9a2ae3e1-76dd-4eec-a8f2-1a7f60f63483
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.137
X-Clv-S3-Version: 2.5
x-amz-request-id: 9a2ae3e1-76dd-4eec-a8f2-1a7f60f63483
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: PUT
Access-Control-Allow-Credentials: true
Vary: Origin, Access-Control-Request-Headers, Access-Control-Allow-Methods
Content-Length: 0
Objekte in mehreren Teilen hochladen
Beim Arbeiten mit größeren Objekten werden Operationen mit mehrteiligen Uploads empfohlen, um Objekte in IBM Cloud® Object Storage zu schreiben. Der Upload eines einzelnen Objekts kann als Gruppe einzelner Teile ausgeführt werden. Diese Teile können unabhängig voneinander in beliebiger Reihenfolge und auch parallel hochgeladen werden. Nach Abschluss des Uploads stellt Object Storage alle Teile als ein einziges Objekt dar. Diese Vorgehensweise hat zahlreiche Vorteile: Es kommt nicht zu Fehlern bei umfangreichen Uploads durch Netzunterbrechungen, die Uploads können angehalten und später neu gestartet werden und die Objekte können zeitnah zur Erstellung hochgeladen werden.
Mehrteilige Uploads sind nur für Objekte mit einer Größe von mehr als 5 MB verfügbar. Bei Objekten, die kleiner als 50 GB sind, wird eine Größe der einzelnen Teile zwischen 20 MB und 100 MB empfohlen, um eine optimale Leistung zu erzielen. Bei größeren Objekten kann die Größe der Teile vergrößert werden, ohne dass hierdurch die Leistung wesentlich beeinträchtigt wird.
Aufgrund der erhöhten Komplexität sollten Entwickler eine Bibliothek verwenden, die Unterstützung für mehrteilige Uploads bietet.
Unvollständige mehrteilige Uploads bleiben erhalten, bis das Objekt gelöscht wird oder bis der mehrteilige Upload mit AbortIncompleteMultipartUpload abgebrochen wird. Wird ein unvollständiger mehrteiliger Upload nicht abgebrochen,
belegt der nur teilweise durchgeführte Upload weiterhin Ressourcen. Schnittstellen sollten unter Berücksichtigung dieses Aspekts entworfen werden, sodass unvollständige mehrteilige Uploads bereinigt werden.
Der Upload eines Objekts in mehreren Teilen umfasst drei Phasen:
- Der Upload wird gestartet und das System erstellt eine
UploadId. - Einzelne Teile werden unter Angabe ihrer sequenziellen Teilenummer und der
UploadIddes Objekts hochgeladen. - Nachdem alle Teile hochgeladen wurden, wird der Upload abgeschlossen, indem eine Anforderung mit der
UploadIdund einem XML-Block gesendet wird, der eine Auflistung aller Teilenummern und des entsprechenden Werts fürEtagenthält.
Mehrteiligen Upload starten
Eine POST-Anforderung, die für ein Objekt mit dem Abfrageparameter upload abgesetzt wird, erstellt einen neuen Wert für UploadId, auf den dann von jedem Teil des hochzuladenden Objekts verwiesen wird.
Persönlich identifizierbare Informationen (PII): Verwenden Sie bei der Benennung von Buckets oder Objekten keine Informationen, die einen Benutzer (natürliche Person) anhand seines Namens, seines Standorts oder anderer Merkmale identifizieren könnten.
Syntax
POST https://{endpoint}/{bucket-name}/{object-name}?uploads= # path style
POST https://{bucket-name}.{endpoint}/{object-name}?uploads= # virtual host style
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
x-amz-checksum-algorithm |
Zeichenfolge | Gibt an, welcher Prüfsummenalgorithmus verwendet wird, um die Prüfsumme für das gesamte mehrteilige Objekt zu erstellen. |
x-amz-checksum-type |
Zeichenfolge | Gibt an, welcher Prüfsummentyp zur Erstellung der Prüfsumme für das gesamte mehrteilige Objekt verwendet werden soll. |
Beispielanforderung
POST /some-bucket/multipart-object-123?uploads= HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielanforderung
POST /some-bucket/multipart-object-123?uploads= HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 200 OK
Date: Fri, 03 Mar 2017 20:34:12 GMT
X-Clv-Request-Id: 258fdd5a-f9be-40f0-990f-5f4225e0c8e5
Accept-Ranges: bytes
Server: Cleversafe/3.9.1.114
X-Clv-S3-Version: 2.5
Content-Type: application/xml
Content-Length: 276
<InitiateMultipartUploadResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Bucket>some-bucket</Bucket>
<Key>multipart-object-123</Key>
<UploadId>0000015a-95e1-4326-654e-a1b57887784f</UploadId>
</InitiateMultipartUploadResult>
Teil hochladen
Eine PUT-Anforderung, die für ein Objekt mit den Abfrageparametern partNumber und uploadId abgesetzt wird, dient zum Hochladen eines Teils eines Objekts. Die Teile können nacheinander oder parallel hochgeladen
werden, müssen jedoch in der richtigen Reihenfolge nummeriert sein.
Persönlich identifizierbare Informationen (PII): Verwenden Sie bei der Benennung von Buckets oder Objekten keine Informationen, die einen Benutzer (natürliche Person) anhand seines Namens, seines Standorts oder anderer Merkmale identifizieren könnten.
Syntax
PUT https://{endpoint}/{bucket-name}/{object-name}?partNumber={sequential-integer}&uploadId={uploadId}= # path style
PUT https://{bucket-name}.{endpoint}/{object-name}?partNumber={sequential-integer}&uploadId={uploadId}= # virtual host style
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
Content-MD5 |
Zeichenfolge | Der 128-Bit- MD5-Hashwert der Nutzlast, der mit dem Standard „ Base64 “ verschlüsselt wurde, dient als Integritätsprüfung, um sicherzustellen, dass die Nutzlast während der Übertragung nicht verändert wurde. |
x-amz-checksum-crc32 |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32 Prüfsumme des Objekts. |
x-amz-checksum-crc32c |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32C Prüfsumme des Objekts. |
x-amz-checksum-crc64nvme |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 64-Bit CRC64NVME Prüfsumme des Objekts. Die Prüfsumme CRC64NVME ist immer eine vollständige Objektprüfsumme. |
x-amz-checksum-sha1 |
Zeichenfolge | Dieser Header ist der Base64 verschlüsselte 160-Bit-Digest des Objekts SHA1. |
x-amz-checksum-sha256 |
Zeichenfolge | Dieser Header ist der Base64 kodierte, 256-Bit SHA256 Digest des Objekts. |
x-amz-sdk-checksum-algorithm |
Zeichenfolge | Gibt den Algorithmus an, der bei Verwendung des SDK zur Erstellung der Prüfsumme für das Objekt verwendet wird. |
x-amz-trailer |
Zeichenfolge | Gibt an, welcher Prüfsummenwert-Header im Trailer der Nutzlast gefunden wird, um die Integrität des Objekts beim Hochladen zu überprüfen. |
Beispielanforderung
PUT /some-bucket/multipart-object-123?partNumber=1&uploadId=0000015a-df89-51d0-2790-dee1ac994053 HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/pdf
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 13374550
Beispielanforderung
PUT /some-bucket/multipart-object-123?partNumber=1&uploadId=0000015a-df89-51d0-2790-dee1ac994053 HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
x-amz-content-sha256: STREAMING-AWS4-HMAC-SHA256-PAYLOAD
Content-Encoding: aws-chunked
x-amz-decoded-content-length: 13374550
Content-Type: application/pdf
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 13374550
Beispielantwort
HTTP/1.1 200 OK
Date: Sat, 18 Mar 2017 03:56:41 GMT
X-Clv-Request-Id: 17ba921d-1c27-4f31-8396-2e6588be5c6d
Accept-Ranges: bytes
Server: Cleversafe/3.9.1.114
X-Clv-S3-Version: 2.5
ETag: "7417ca8d45a71b692168f0419c17fe2f"
Content-Length: 0
Teile auflisten
Eine GET-Anforderung, in der ein Pfad zu einem mehrteiligen Objekt mit einer aktiven UploadID angegeben ist, die als Abfrageparameter definiert ist, gibt eine Liste aller Teile des Objekts zurück.
Syntax
GET https://{endpoint}/{bucket-name}/{object-name}?uploadId={uploadId} # path style
GET https://{bucket-name}.{endpoint}/{object-name}?uploadId={uploadId} # virtual host style
Abfrageparameter
| Parameter | Erforderlich? | Typ | Beschreibung |
|---|---|---|---|
uploadId |
Erforderlich | Zeichenfolge | Beim Initialisieren eines mehrteiligen Uploads zurückgegebene Upload-ID. |
max-parts |
Optional | Zeichenfolge | Standardwert: 1.000. |
part-number-marker |
Optional | Zeichenfolge | Definiert, wo die Liste der Teile beginnt |
Beispielanforderung
GET /farm/spaceship?uploadId=01000162-3f46-6ab8-4b5f-f7060b310f37 HTTP/1.1
Authorization: bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielanforderung
GET /farm/spaceship?uploadId=01000162-3f46-6ab8-4b5f-f7060b310f37 HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 200 OK
Date: Mon, 19 Mar 2018 17:21:08 GMT
X-Clv-Request-Id: 6544044d-4f88-4bb6-9ee5-bfadf5023249
Server: Cleversafe/3.12.4.20
X-Clv-S3-Version: 2.5
Accept-Ranges: bytes
Content-Type: application/xml
Content-Length: 743
<ListPartsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Bucket>farm</Bucket>
<Key>spaceship</Key>
<UploadId>01000162-3f46-6ab8-4b5f-f7060b310f37</UploadId>
<Initiator>
<ID>d6f04d83-6c4f-4a62-a165-696756d63903</ID>
<DisplayName>d6f04d83-6c4f-4a62-a165-696756d63903</DisplayName>
</Initiator>
<Owner>
<ID>d6f04d83-6c4f-4a62-a165-696756d63903</ID>
<DisplayName>d6f04d83-6c4f-4a62-a165-696756d63903</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
<MaxParts>1000</MaxParts>
<IsTruncated>false</IsTruncated>
<Part>
<PartNumber>1</PartNumber>
<LastModified>2018-03-19T17:20:35.482Z</LastModified>
<ETag>"bb03cf4fa8603fe407a65ee1dba55265"</ETag>
<Size>7128094</Size>
</Part>
</ListPartsResult>
Mehrteiligen Upload ausführen
Eine POST-Anforderung, die für ein Objekt mit dem Abfrageparameter uploadId und dem entsprechenden XML-Block im Hauptteil abgesetzt wird, dient zur Ausführung eines mehrteiligen Uploads.
Syntax
POST https://{endpoint}/{bucket-name}/{object-name}?uploadId={uploadId}= # path style
POST https://{bucket-name}.{endpoint}/{object-name}?uploadId={uploadId}= # virtual host style
Optionale Header
| Überschrift | Typ | Beschreibung |
|---|---|---|
x-amz-checksum-crc32 |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32 Prüfsumme des Objekts. |
x-amz-checksum-crc32c |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32C Prüfsumme des Objekts. |
x-amz-checksum-crc64nvme |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 64-Bit CRC64NVME Prüfsumme des Objekts. Die Prüfsumme CRC64NVME ist immer eine vollständige Objektprüfsumme. |
x-amz-checksum-sha1 |
Zeichenfolge | Dieser Header ist der Base64 verschlüsselte 160-Bit-Digest des Objekts SHA1. |
x-amz-checksum-sha256 |
Zeichenfolge | Dieser Header ist der Base64 kodierte, 256-Bit SHA256 Digest des Objekts. |
x-amz-checksum-type |
Zeichenfolge | Gibt an, welcher Prüfsummentyp zur Erstellung der Prüfsumme für das gesamte mehrteilige Objekt verwendet werden soll. |
Der Hauptteil der Anforderung muss einen XML-Block mit dem folgenden Schema enthalten:
| Element | Typ | Untergeordnete Elemente | Vorfahre | Einschränkung |
|---|---|---|---|---|
| CompleteMultipartUpload | Container | Teil |
|
|
| Teil | Container | PartNumber, ETag |
Löschen |
|
| PartNumber | Zeichenfolge |
|
Object | Gültige Teilenummer |
ETag |
Zeichenfolge |
|
Object | Gültige ETag-Wertzeichenfolge |
<CompleteMultipartUpload>
<Part>
<PartNumber>{sequential part number}</PartNumber>
<ETag>{ETag value from part upload response header}</ETag>
</Part>
</CompleteMultipartUpload>
Beispielanforderung
POST /some-bucket/multipart-object-123?uploadId=0000015a-df89-51d0-2790-dee1ac994053 HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain; charset=utf-8
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 257
Beispielanforderung
POST /some-bucket/multipart-object-123?uploadId=0000015a-df89-51d0-2790-dee1ac994053 HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain; charset=utf-8
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 257
<CompleteMultipartUpload>
<Part>
<PartNumber>1</PartNumber>
<ETag>"7417ca8d45a71b692168f0419c17fe2f"</ETag>
</Part>
<Part>
<PartNumber>2</PartNumber>
<ETag>"7417ca8d45a71b692168f0419c17fe2f"</ETag>
</Part>
</CompleteMultipartUpload>
Beispielantwort
HTTP/1.1 200 OK
Date: Fri, 03 Mar 2017 19:18:44 GMT
X-Clv-Request-Id: c8be10e7-94c4-4c03-9960-6f242b42424d
Accept-Ranges: bytes
Server: Cleversafe/3.9.1.114
X-Clv-S3-Version: 2.5
ETag: "765ba3df36cf24e49f67fc6f689dfc6e-2"
Content-Type: application/xml
Content-Length: 364
<CompleteMultipartUploadResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Location>http://s3.us.cloud-object-storage.appdomain.cloud/zopse/multipart-object-123</Location>
<Bucket>some-bucket</Bucket>
<Key>multipart-object-123</Key>
<ETag>"765ba3df36cf24e49f67fc6f689dfc6e-2"</ETag>
</CompleteMultipartUploadResult>
Unvollständige mehrteilige Uploads abbrechen
Eine DELETE-Anforderung, die für ein Objekt mit dem Abfrageparameter uploadId abgesetzt wird, dient zur Löschung aller nicht abgeschlossenen Teile eines mehrteiligen Uploads.
Syntax
DELETE https://{endpoint}/{bucket-name}/{object-name}?uploadId={uploadId}= # path style
DELETE https://{bucket-name}.{endpoint}/{object-name}?uploadId={uploadId}= # virtual host style
Beispielanforderung
DELETE /some-bucket/multipart-object-123?uploadId=0000015a-df89-51d0-2790-dee1ac994053 HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielanforderung
DELETE /some-bucket/multipart-object-123?uploadId=0000015a-df89-51d0-2790-dee1ac994053 HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielantwort
HTTP/1.1 204 No Content
Date: Thu, 16 Mar 2017 22:07:48 GMT
X-Clv-Request-Id: 06d67542-6a3f-4616-be25-fc4dbdf242ad
Accept-Ranges: bytes
Server: Cleversafe/3.9.1.114
X-Clv-S3-Version: 2.5
Archiviertes Objekt vorübergehend wiederherstellen
Eine POST-Anforderung, die für ein Objekt mit dem Abfrageparameter restore abgesetzt wird, dient zur Anforderung einer vorübergehenden Wiederherstellung eines archivierten Objekts. Ein Content-MD5-Header
oder ein checksum-Header (einschließlich x-amz-checksum-crc32, x-amz-checksum-crc32c, x-amz-checksum-crc64nvme, x-amz-checksum-sha1 oder x-amz-checksum-sha256) ist
als Integritätsprüfung für die Nutzdaten erforderlich.
Ein archiviertes Objekt muss wiederhergestellt werden, bevor es heruntergeladen oder geändert wird. Die Lebensdauer des Objekts muss angegeben werden. Nach Ablauf dieser Lebensdauer wird die temporäre Kopie des Objekts gelöscht.
Für Buckets mit der Speicherklasse GLACIER für Lebenszyklusrichtlinienübergänge kann eine Verzögerung von bis zu 12 Stunden auftreten, bevor die wiederhergestellte Kopie für den Zugriff verfügbar ist. Wenn die Übergangsspeicherklasse
auf ACCELERATED gesetzt wurde, kann es bis zu zwei (2) Stunden dauern, bis das zurückgeschriebene Objekt verfügbar ist. Eine HEAD-Anforderung kann verwendet werden, um zu prüfen, ob die wiederhergestellte Kopie verfügbar ist.
Um das Objekt dauerhaft wiederherzustellen, muss es in ein Bucket kopiert werden, das keine aktive Lebenszykluskonfiguration hat.
Syntax
POST https://{endpoint}/{bucket-name}/{object-name}?restore # path style
POST https://{bucket-name}.{endpoint}/{object-name}?restore # virtual host style
Nutzdatenelemente
Der Hauptteil der Anforderung muss einen XML-Block mit dem folgenden Schema enthalten:
| Element | Typ | Untergeordnete Elemente | Vorfahre | Einschränkung |
|---|---|---|---|---|
| RestoreRequest | Container | Days, GlacierJobParameters | Keine | Keine |
| Tage | Integer | Keine | RestoreRequest | Gibt die Lebensdauer des vorübergehend wiederhergestellten Objekts an. Die Mindestanzahl Tage, die eine zurückgeschriebene Kopie des Objekts vorhanden sein kann, ist 1. Nach Ablauf des Zurückschreibungszeitraums wird die temporäre Kopie des Objekts entfernt. |
| GlacierJobParameters | Zeichenfolge | Tier | RestoreRequest | Keine |
| Tier | Zeichenfolge | Keine | GlacierJobParameters | Optional; bleibt das Feld leer, wird standardmäßig der Wert verwendet, der der Speicherschicht der Richtlinie zugeordnet ist, die beim Schreiben des Objekts vorhanden war. Wenn dieser Wert nicht leer bleibt, muss er auf
Bulk gesetzt werden, wenn die Übergangsspeicherklasse für die Lebenszyklusrichtlinie des Buckets auf GLACIER und muss auf Accelerated gesetzt werden, wenn die Übergangsspeicherklasse
auf ACCELERATED gesetzt wurde. |
| Überschrift | Typ | Beschreibung |
|---|---|---|
Content-MD5 |
Zeichenfolge | Der 128-Bit- MD5-Hash der Nutzlast, der mit dem Standard „ base64 “ verschlüsselt wurde, dient als Integritätsprüfung, um sicherzustellen, dass die Nutzlast während der Übertragung nicht verändert wurde. |
x-amz-checksum-crc32 |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32 Prüfsumme des Objekts. |
x-amz-checksum-crc32c |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 32-Bit CRC32C Prüfsumme des Objekts. |
x-amz-checksum-crc64nvme |
Zeichenfolge | Dieser Header ist die Base64 kodierte, 64-Bit CRC64NVME Prüfsumme des Objekts. Die Prüfsumme CRC64NVME ist immer eine vollständige Objektprüfsumme. |
x-amz-checksum-sha1 |
Zeichenfolge | Dieser Header ist der Base64 verschlüsselte 160-Bit-Digest des Objekts SHA1. |
x-amz-checksum-sha256 |
Zeichenfolge | Dieser Header ist der Base64 kodierte, 256-Bit SHA256 Digest des Objekts. |
<RestoreRequest>
<Days>{integer}</Days>
<GlacierJobParameters>
<Tier>Bulk</Tier>
</GlacierJobParameters>
</RestoreRequest>
Beispielanforderung
POST /apiary/queenbee?restore HTTP/1.1
Authorization: {authorization-string}
Content-Type: text/plain
Content-MD5: rgRRGfd/OytcM7O5gIaQ==
Content-Length: 305
Host: s3.us.cloud-object-storage.appdomain.cloud
Beispielanforderung
POST /apiary/queenbee?restore HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-MD5: rgRRGfd/OytcM7O5gIaQ==
Content-Length: 305
Host: s3.us.cloud-object-storage.appdomain.cloud
<RestoreRequest>
<Days>3</Days>
<GlacierJobParameters>
<Tier>Bulk</Tier>
</GlacierJobParameters>
</RestoreRequest>
Beispielantwort
HTTP/1.1 202 Accepted
Date: Thu, 16 Mar 2017 22:07:48 GMT
X-Clv-Request-Id: 06d67542-6a3f-4616-be25-fc4dbdf242ad
Accept-Ranges: bytes
Server: Cleversafe/3.9.1.114
X-Clv-S3-Version: 2.5
Metadaten aktualisieren
Zum Aktualisieren der Metadaten für ein vorhandenes Objekt stehen zwei Methoden zur Verfügung:
- Die Anforderung
PUTmit den neuen Metadaten und dem Inhalt des ursprünglichen Objekts. - Die Ausführung der Anforderung
COPYmit den neuen Metadaten, in der das ursprüngliche Objekt als Kopierquelle angegeben ist.
Alle Metadatenschlüssel müssen mit dem Präfix x-amz-meta- versehen werden.
PUT zum Aktualisieren der Metadaten verwenden
Die PUT Anfrage erfordert eine Kopie des vorhandenen Objekts, da der Inhalt überschrieben wird.
Syntax
PUT https://{endpoint}/{bucket-name}/{object-name} # path style
PUT https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Beispielanforderung
PUT /apiary/queen-bee HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain; charset=utf-8
Host: s3.us.cloud-object-storage.appdomain.cloud
x-amz-meta-key1: value1
x-amz-meta-key2: value2
Content-Length: 533
The 'queen' bee is developed from larvae selected by worker bees and fed a
substance referred to as 'royal jelly' to accelerate sexual maturity. After a
short while the 'queen' is the mother of nearly every bee in the hive, and
the colony will fight fiercely to protect her.
Beispielanforderung
PUT /apiary/queen-bee HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain; charset=utf-8
Content-MD5: M625BaNwd/OytcM7O5gIaQ==
Host: s3.us.cloud-object-storage.appdomain.cloud
x-amz-meta-key1: value1
x-amz-meta-key2: value2
Content-Length: 533
The 'queen' bee is developed from larvae selected by worker bees and fed a
substance referred to as 'royal jelly' to accelerate sexual maturity. After a
short while the 'queen' is the mother of nearly every bee in the hive, and
the colony will fight fiercely to protect her.
Beispielantwort
HTTP/1.1 200 OK
Date: Thu, 25 Aug 2016 18:30:02 GMT
X-Clv-Request-Id: 9f0ca49a-ae13-4d2d-925b-117b157cf5c3
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.121
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f0ca49a-ae13-4d2d-925b-117b157cf5c3
ETag: "3ca744fa96cb95e92081708887f63de5"
Content-Length: 0
COPY zum Aktualisieren der Metadaten verwenden
Die vollständigen Details zur Anforderung COPY finden Sie hier.
Syntax
PUT https://{endpoint}/{bucket-name}/{object-name} # path style
PUT https://{bucket-name}.{endpoint}/{object-name} # virtual host style
Beispielanforderung
PUT /apiary/queen-bee HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain; charset=utf-8
Host: s3.us.cloud-object-storage.appdomain.cloud
x-amz-copy-source: /apiary/queen-bee
x-amz-metadata-directive: REPLACE
x-amz-meta-key1: value1
x-amz-meta-key2: value2
Beispielanforderung
PUT /apiary/queen-bee HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
x-amz-copy-source: /apiary/queen-bee
x-amz-metadata-directive: REPLACE
x-amz-meta-key1: value1
x-amz-meta-key2: value2
Beispielantwort
HTTP/1.1 200 OK
Date: Thu, 25 Aug 2016 18:30:02 GMT
X-Clv-Request-Id: 9f0ca49a-ae13-4d2d-925b-117b157cf5c3
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.121
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f0ca49a-ae13-4d2d-925b-117b157cf5c3
ETag: "3ca744fa96cb95e92081708887f63de5"
Content-Length: 0
Nächste Schritte
Weitere Informationen zu Bucketoperationen finden Sie in der Dokumentation.