GetObject
您可以使用 S3 GetObject 要求、從 S3 貯體擷取物件。
GetObject 和多部分物件
您可以使用 partNumber
要求參數以擷取多部分或分割物件的特定部分。 。 x-amz-mp-parts-count
回應元素指出物件有多少部分。
您可以設定 partNumber
對於分割 / 多個零件物件和非分割 / 非多個零件物件、則為 1 ;不過、 x-amz-mp-parts-count
只會針對分割或多個零件物件傳回回應元素。
使用者中繼資料中的UTF-8字元
在使用者定義的中繼資料中、無法剖析或解譯轉義的utf-8字元。StorageGRID取得使用者定義中繼資料中含有轉義式 UTF-8 字元的物件要求、並不會傳回 x-amz-missing-meta
如果金鑰名稱或值包含不可列印的字元、則為標頭。
不支援的要求標頭
不支援並傳回下列要求標頭 XNotImplemented
:
-
x-amz-website-redirect-location
版本管理
如果是 versionId
未指定SubResource、此作業會擷取版本控制儲存區中最新版本的物件。如果物件的目前版本是刪除標記、則會傳回「找不到」狀態和 x-amz-delete-marker
回應標頭設定為 true
。
使用客戶提供的加密金鑰(SSE-C)要求伺服器端加密標頭
如果物件是以您提供的唯一金鑰加密、請使用所有三個標頭。
-
x-amz-server-side-encryption-customer-algorithm
:指定AES256
。 -
x-amz-server-side-encryption-customer-key
:指定物件的加密金鑰。 -
x-amz-server-side-encryption-customer-key-MD5
:指定對象加密密鑰的md5摘要。
您提供的加密金鑰永遠不會儲存。如果您遺失加密金鑰、就會遺失對應的物件。在使用客戶提供的金鑰來保護物件資料之前、請先檢閱中的考量事項 "使用伺服器端加密"。 |
GetObject for Cloud Storage Pool 物件的行為
如果某個物件儲存在雲端儲存池中、且該物件的一個或多個複本也存在於網格上、則 GetObject 要求會嘗試從網格擷取資料、然後再從雲端儲存池擷取資料。 |
物件狀態 | GetObject 的行為 |
---|---|
物件擷取到StorageGRID 不經ILM評估、或儲存在傳統儲存資源池中的物件、或使用銷毀編碼 |
系統會擷取物件複本。 |
Cloud Storage Pool中的物件、但尚未轉換為無法擷取的狀態 |
系統會擷取物件複本。 |
物件移轉至無法擷取的狀態 |
使用 "RestoreObject" 要求將物件還原至可擷取狀態。 |
正在從無法擷取的狀態還原的物件 |
等待 RestoreObject 要求完成。 |
物件已完全還原至雲端儲存資源池 |
系統會擷取物件複本。 |
雲端儲存資源池中的多部份或分段物件
如果您上傳了多個部分的物件、或StorageGRID 是將一個大型物件分割成多個區段、StorageGRID 則透過取樣物件的一部分或區段、決定該物件是否可在Cloud Storage Pool中使用。在某些情況下、 GetObject 要求可能會錯誤傳回 200 OK
當物件的某些部分已轉換為無法擷取的狀態、或物件的某些部分尚未還原時。
在這些情況下:
-
GetObject 要求可能會傳回一些資料、但中途停止傳輸。
-
後續的 GetObject 要求可能會傳回
403 Forbidden
。