对象操作

获取对象信息 - HEAD Object

描述

获取对象相关信息,返回对象相关元数据信息。该接口通常也用来判断对象存在性和是否有权限。

语法

HEAD /${ObjectKey} HTTP/1.1
HOST: ${BucketName}.${endpoint}
Date: ${date}
Authorization: ${signature}

请求参数

参数描述是否必须
ObjectKey对象名
类型:字符串
默认:无
No

请求头

Header描述
If-Modified-Since只有当指定时间之后做过修改操作才返回这个对象,否则返回 304(Not Modifed)
类型:字符串
默认:无

服务端加密

可以添加 x-nos-server-side-encryption 头来对文件进行加密,具体参考 服务端加密存储使用

HTTP Header 格式

名称描述示例备注
x-nos-server-side-encryption说明:该选项指定服务端加密的模式有效值: AES256x-nos-server-side-encryption:AES256 表示使用服务端加密并以托管模式管理加密密钥目前仅支持 AES256,后续会增加其他加密方式

示例

Request

HEAD /1.jpg HTTP/1.1
HOST: dream.nos-eastchina1.126.net
Date: Fri, 10 Feb 2012 21:34:55 GMT
Authorization: NOS I_AM_ACCESS_ID:I_AM_SIGNATURE

Response

HTTP/1.1 200 OK
x-nos-request-id: 17b21e42ac11000001390ab891440240
Content-Type: image
Date: Fri, 02 Feb 2012 01:53:42 GMT
Last-Modified: Sun, 1 Jan 2012 12:00:00 GMT
ETag: d41d8cd98f00b204e9800998ecf8427e
Connection: close
Server: NOS

Attention

通过服务器端加密存储的 Object,以下 API请求中NOS会返回 x-nos-server-side-encryption 头,具体参考服务器端加密存储使用文档

细节描述

1.不论正常返回 200 OK 还是非正常返回,Head Object 都不返回消息体。所有对象元数据都包含在 HTTP 返回头中。

2.如果 Bucket 不存在,返回 404 no content 错误。错误码:NoSuchBucket。

3.只有 Bucket 的拥有者才能获取 Bucket 中 Object 的元数据信息。非 Bucket 拥有者执行 HEAD Object 操作将返回 403 Forbidden 错误。错误码:AccessDenied。

4.如果对象是分块上传的对象,返回的 etag 不是由该对象对应的文件的 md5 生成的。etag 尾部的 -1 无特殊含义,只是作为标志。