取得對象
您可以使用 S3 GetObject 請求從 S3 儲存桶中擷取物件。
GetObject 和多部分對象
您可以使用 `partNumber`請求參數來檢索多部分或分段物件的特定部分。這 `x-amz-mp-parts-count`響應元素指示物件有多少個部分。
您可以設定 `partNumber`對於分段/多部分對象和非分段/非多部分對象,皆為 1;但是, `x-amz-mp-parts-count`響應元素僅針對分段或多部分物件傳回。
用戶元資料中的 UTF-8 字符
StorageGRID不會解析或解釋使用者定義元資料中的轉義 UTF-8 字元。對使用者定義元資料中含有轉義 UTF-8 字元的物件進行 GET 請求不會傳回 `x-amz-missing-meta`如果鍵名或值包含不可列印的字符,則為標頭。
支援的請求標頭
支援以下請求標頭:
-
x-amz-checksum-mode: 指定ENABLED這 `Range`標頭不支援 `x-amz-checksum-mode`用於取得物件。當你包括 `Range`在請求中 `x-amz-checksum-mode`啟用後, StorageGRID不會在回應中傳回校驗和值。
不支援的請求標頭
不支援以下請求標頭並返回 XNotImplemented:
-
x-amz-website-redirect-location
版本控制
如果 versionId`如果未指定子資源,則操作將取得版本化儲存桶中物件的最新版本。如果物件的目前版本是刪除標記,則傳回「未找到」狀態,並 `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 行為
|
|
如果物件儲存在雲端儲存池中,並且該物件的一個或多個副本也存在於網格中,則 GetObject 請求將嘗試從網格中檢索數據,然後再從雲端儲存池中檢索資料。 |
| 物體狀態 | GetObject 的行為 |
|---|---|
物件已匯入StorageGRID但尚未經過 ILM 評估,或儲存在傳統儲存池中或使用擦除編碼的對象 |
檢索物件的副本。 |
物件位於雲端儲存池中,但尚未轉換為不可檢索狀態 |
檢索物件的副本。 |
物件已轉換為不可檢索狀態 |
使用"復原對象"請求將物件恢復到可檢索狀態。 |
物件正在從不可恢復狀態恢復 |
等待 RestoreObject 請求完成。 |
物件已完全恢復到雲端儲存池 |
檢索物件的副本。 |
雲端儲存池中的多部分或分段對象
如果您上傳了多部分對象,或者StorageGRID將大型對象拆分為多個段, StorageGRID會透過對該對象的部分或段的子集進行採樣來確定該對像是否在雲端儲存池中可用。在某些情況下,GetObject 請求可能會錯誤地傳回 `200 OK`當物件的某些部分已轉換為不可檢索狀態或物件的某些部分尚未復原時。
在這些情況下:
-
GetObject 請求可能會傳回一些數據,但在傳輸過程中停止。
-
後續的 GetObject 請求可能會傳回
403 Forbidden。