Querying Object Metadata¶
Functions¶
Users with the read permission on objects can perform the HeadObject operation to obtain metadata of objects. The object metadata is included in the response.
Versioning¶
By default, this operation returns the latest metadata of an object. If the object has a delete marker, status code 404 is returned. To obtain the object metadata of a specified version, the versionId parameter can be used to specify the desired version.
Request Syntax¶
HEAD /ObjectName HTTP/1.1
Host: bucketname.obs.region.example.com
Date: date
Authorization: authorization
Request Parameters¶
Table 1 describes the request parameters.
Parameter | Description | Mandatory |
---|---|---|
versionId | Object version ID Type: string | No |
Request Headers¶
This request uses common headers. For details, see Table 3.
In addition, the request can use additional headers, as shown in Table 2.
Header | Description | Mandatory |
---|---|---|
Origin | Origin of the cross-domain request specified by the pre-request. Generally, it is a domain name. Type: string | No |
Access-Control-Request-Headers | Indicates the HTTP headers of a request. The request can use multiple HTTP headers. Type: string | No |
Request Elements¶
This request involves no elements.
Response Syntax¶
HTTP/1.1 status_code
Content-Type: type
Date: date
Content-Length: length
Etag: etag
Last-Modified: time
Response Headers¶
The response to the request uses common headers. For details, see Table 1.
In addition to the common response headers, the headers listed in Table 3 may be used.
Header | Description |
---|---|
x-obs-expiration | When an object has its lifecycle rule, the object expiration time is subject to its lifecycle rule. This header field is use expiry-date to describe the object expiration date. If the lifecycle rule is configured only for the entire bucket not individual objects, the object expiration time is subject to the bucket lifecycle rule. This header field uses the expiry-date and rule-id to describe the detailed expiration information of objects. If no lifecycle rule is configured, this header field is not contained in the response. Type: string |
x-obs-website-redirect-location | Indicates the redirected-to location. If the bucket is configured with website information, this parameter can be set for the object metadata so that the website endpoint will evaluate the request for the object as a 301 redirect to another object in the same bucket or an external URL. Type: string |
x-obs-version-id | Object version ID. If the object has no version number specified, the response does not contain this header. Type: string Default value: none |
Access-Control-Allow-Origin | Indicates that the origin is included in the response if the origin in the request meets the CORS configuration requirements when CORS is configured for buckets. Type: string |
Access-Control-Allow-Headers | Indicates that the headers are included in the response if headers in the request meet the CORS configuration requirements when CORS is configured for buckets. Type: string |
Access-Control-Max-Age | Value of MaxAgeSeconds in the CORS configuration of the server when CORS is configured for buckets. Type: integer |
Access-Control-Allow-Methods | Indicates that methods in the rule are included in the response if Access-Control-Request-Method in the request meets the CORS configuration requirements when CORS is configured for buckets. Type: string Value options: GET, PUT, HEAD, POST, DELETE |
Access-Control-Expose-Headers | Value of ExposeHeader in the CORS configuration of a server when CORS is configured for buckets. Type: string |
x-obs-object-type | If the object is not a normal one, this header field is returned. The value can be Appendable. Type: string |
x-obs-next-append-position | This header field is returned when the object is an appendable object. Type: integer |
x-obs-uploadId | This header is returned if the object is a combination of multiple parts. The header value indicates the ID of the corresponding multipart upload task. Type: string |
x-obs-object-lock-mode | WORM mode that will be applied to the object. Currently, only COMPLIANCE is supported. This header is returned only when the object has any object-level retention policy configured or has the default bucket-level WORM policy applied. To configure this header, the GetObjectRetention permission is required. Type: string Example: x-obs-object-lock-mode:COMPLIANCE |
x-obs-object-lock-retain-until-date | Indicates the expiration time of the WORM retention. The value must be a UTC time that complies with ISO 8601, for example, 2015-07-01T04:11:15Z. This header is returned only when the object has any object-level retention policy configured or has the default bucket-level WORM policy applied. To configure this header, the GetObjectRetention permission is required. Type: string Example: x-obs-object-lock-retain-until-date:2015-07-01T04:11:15Z |
Response Elements¶
This response contains no elements.
Error Responses¶
No special error responses are returned. For details about error responses, see Table 2.
Sample Request¶
HEAD /object1 HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.example.com
Accept: */*
Date: WED, 01 Jul 2015 04:19:25 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:/cARjk81l2iExMfQqn6iT3qEZ74=
Sample Response¶
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: 8DF400000163D3E4BB5905C41B6E65B6
Accept-Ranges: bytes
ETag: "3b46eaf02d3b6b1206078bb86a7b7013"
Last-Modified: WED, 01 Jul 2015 01:19:21 GMT
Content-Type: binary/octet-stream
x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSD3nAiTaBoeyt9oHp9vTYtXnLDmwV6D
Date: WED, 01 Jul 2015 04:19:21 GMT
Content-Length: 4572