對象/檔案元資訊(Object Meta)是對上傳到OSS的檔案的屬性描述,分為兩種:HTTP標準屬性(HTTP Headers)和 User Meta(用戶自訂元資訊)。檔案元資訊可以在各種方式上傳時或者拷貝檔案時進行設定。
- HTTP標準屬性
名稱 描述 Cache-Control 指定該Object被下載時的網頁的緩存行為 Content-Disposition 指定該Object被下載時的名稱 Content-Encoding 指定該Object被下載時的內容編碼格式 Content-Language 指定該Object被下載時的內容語言編碼 Expires 過期時間 Content-Length 該Object大小 Content-Type 該Object檔案類型 Last-Modified 最近修改時間 - User Meta
為了便於用戶對Object進行更多描述,OSS中規定所有以x-oss-meta-為首碼的參數視為User Meta,比如x-oss-meta-location。一個Object可以有多個類似的參數,但所有的User Meta總大小不能超過8KB。這些User Meta資訊會在下載GetObject或者HeadObject的時候在HTTP頭部中返回。
上傳Object時設定Object Meta
當上傳Object的時候,可以設定Object Meta。
功能使用參考:
- API:Put Object
- SDK:Java SDK-上傳文檔中的設定Object的Http Header和用戶自訂元資訊
分區上傳(斷點續傳)的時候也可以設定Object Meta。
功能使用參考:
- API:InitiateMultipartUpload
- SDK:Java SDK--初始化Multipart Upload中的初始化Multipart Upload
上傳Object後修改Object Meta
如果需要修改Object Meta而不修改Object本身的數據,那麼應該使用拷貝Object的介面來實現這個功能,只需要將新的Meta資訊(注意這個Meta必須是全量)放在HTTP頭部中,然後將拷貝的源地址和目標地址都設為目標Object的地址即可。
功能使用參考:
- API:拷貝Object
- SDK:Java SDK-通過CopyObjectRequest拷貝Object
獲取Object Meta
如果需要獲取Object Meta而並不需要Object本身的數據,可以使用此功能。
功能使用參考:
- API:Head Object
- SDK:Java SDK-獲取檔案元資訊