Updated on 2023-06-15 GMT+08:00

Obtain Object Metadata

API Description

You can use this API to send a HEAD request to the object of a specified bucket to obtain its metadata.

Method Definition

ObsClient.getObjectMetadata

Request Parameter

Field

Type

Optional or Mandatory

Description

Bucket

String

Mandatory

Bucket name

Key

String

Mandatory

Object name

RequestDate

String

or

Date

Optional

Request time

NOTE:

When the parameter type is String, the value must comply with the ISO8601 or RFC822 standards.

VersionId

String

Optional

Object version ID

SseC

String

Optional

Algorithm used in SSE-C decryption. The value can be:

  • AES256

SseCKey

String

Optional

Key used in SSE-C decryption, which is calculated by using AES-256.

Returned Result (InterfaceResult)

Field

Type

Description

RequestId

String

Request ID returned by the OBS server

LastModified

String

Time when the last modification was made to the object

ContentLength

String

Object size in bytes

ContentType

String

MIME type of the object

ETag

String

Object ETag

VersionId

String

Object version ID

WebsiteRedirectLocation

String

Location where the object is redirected to, when the bucket is configured with website hosting.

StorageClass

String

Storage class of the object. When the storage class is OBS Standard, the value is null.

Restore

String

Restore status of the object in the Archive storage class

Expiration

String

Expiration details

Metadata

Object

Customized metadata of the object You need to add the additional headers allowed to be carried in the response in the CORS configurations. For example, you can add the x-obs-meta-property1 header to obtain customized metadata property1.

ObjectType

String

Whether the object is an appendable object

NextPosition

String

Start position for next appending

Sample Code

obsClient.getObjectMetadata({
       Bucket:'bucketname',
       Key : 'objectkey'
},function (err, result) {
       if(err){
              console.error('Error-->' + err);
       }else{
              if(result.CommonMsg.Status < 300){
                     console.log('RequestId-->' + result.InterfaceResult.RequestId);
                     console.log('ETag-->' + result.InterfaceResult.ETag);
                     console.log('VersionId-->' + result.InterfaceResult.VersionId);
                     console.log('ContentLength-->' + result.InterfaceResult.ContentLength);
                     console.log('Expiration-->' + result.InterfaceResult.Expiration);
                     console.log('LastModified-->' + result.InterfaceResult.LastModified);
                     console.log('StorageClass-->' + result.InterfaceResult.StorageClass);
              }else{
                     console.log('Code-->' + result.CommonMsg.Status);
              }
       }
});