主题切换
对象操作
删除对象
功能介绍
删除对象的操作。如果要删除的对象不存在,则仍然返回成功信息。
请求语法
http
DELETE /<bucket-name>/<object-key> HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
X-Amz-Content-sha256:<x-amz-content-sha256>
Authorization: <authorization-header>
请求参数
参数 | 描述 | 是否必须 |
---|---|---|
ObjectKey | 删除对象的对象名称 类型:字符串 | 是 |
请求消息示例
http
DELETE https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test.txt HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
X-Amz-Date: 20231128T075632Z
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=8d170c991b51e1fe9974b17f4d8c17678acfa449331f35de9f4412c26c3791cf
响应消息示例
http
HTTP/1.1 204 204 No Content
Content-Type: application/json
Date: Tue, 28 Nov 2023 07:56:55 GMT
Server: osca Filer Dev osca v2.00-dae212ad
批量删除对象
功能描述
批量删除对象特性用于将一个桶内的部分对象一次性删除,删除后可通过其他客户端回收站回复。批量删除对象要求返回结果里包含每个对象的删除结果。OSCA-OSS的批量删除对象使用同步删除对象的方式,每个对象的删除结果返回给请求用户。
批量删除对象支持两种响应方式:verbose和quiet。Verbose是指在返回响应时,不管对象是否删除成功都将删除结果包含在XML响应里;quiet是指在返回响应时,只返回删除失败的对象结果,没有返回的认为删除成功。OSCA-OSS默认使用verbose模式,如果用户在请求消息体中指定quiet模式的话, 使用quiet模式。
批量删除的请求消息头中必须包含Content-MD5以及Content-Length,用以保证请求的消息体在服务端检测到网络传输如果有错,则可以检测出来。
请求语法
http
POST /<bucket-name>?delete HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
Content-Length: <request-body-size>
Content-Type: application/xml
X-Amz-Content-Sha256: <content-sha256>
Authorization: <authorization-header>
<Delete>
<Object>
<Key>object-key-1</Key>
</Object>
<Object>
<Key>object-key-2</Key>
</Object>
</Delete>
请求参数
参数 | 描述 | 是否必须 |
---|---|---|
Delete | 多重删除的请求容器元素 | 是 |
Quiet | 是否显示具体删除信息 类型:布尔值 父节点:Delete | 否 |
Object | 要删除的单个对象的容器元素 类型:容器 父节点:Delete | 是 |
Key | 要删除的对象键值 类型:字符串 父节点:Object | 是 |
响应参数
Element | 描述 |
---|---|
DeleteResult | 多重删除的响应容器元素 类型:容器 |
Deleted | 已被成功删除的容器元素 类型:容器 父节点:DeleteResult |
Key | 已删除的对象键值 类型:字符串 父节点:Deleted,Error |
请求消息示例
http
POST https://fgws3-ocloud.ihep.ac.cn/20001-cbq?delete= HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=content-length;content-md5;host;x-amz-content-sha256;x-amz-date, Signature=a2442ef53f2aa1d1ef4155c71a38dcbf7a77e2e53065bec1b419f09bcdcf1e82
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
Content-Md5: hAP8IPDjd2kBONYezqJXwQ==
Content-Length: 167
X-Amz-Date: 20231128T075955Z
X-Amz-Content-Sha256: 2ad38bb6b7e6e44f76923d981f965b91be5a02b94bacf7dd8f01fe0e4336ee09
响应消息示例
http
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 202
Content-Type: application/xml
Server: JWanFS FGW Server
X-Amz-Request-Id: 1701158396842525784
Date: Tue, 28 Nov 2023 07:59:56 GMT
<?xml version="1.0" encoding="UTF-8"?>
<DeleteResult
xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Deleted>
<Key>COMPILING_CN.txt</Key>
</Deleted>
<Deleted>
<Key>s3test.txt</Key>
</Deleted>
</DeleteResult>
获取对象内容
功能介绍
GET操作从对象存储下载对象。使用GET接口前,请确认必须拥有对象的READ权限。如果对象Owner向匿名用户授予READ访问权限,则可以在不使用鉴权头域的情况下访问该对象。
请求语法
http
GET /<bucket-name>/<object-key> HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
X-Amz-Content-sha256:<x-amz-content-sha256>
Authorization: <authorization-header>
请求消息示例
http
GET https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test.txt HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=68def511617e750113f4e12e6cf79a7c48e0e7c46f6d56d0f49abafbdbe5a5a5
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
X-Amz-Date: 20231128T080303Z
响应消息示例
http
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Disposition: inline; filename="S3test.txt"
Content-Length: 11
Last-Modified: Tue, 28 Nov 2023 08:02:56 GMT
Server: osca Filer Dev osca v2.00-dae212ad
Access-Control-Expose-Headers: Content-Disposition
Content-Type: application/ocet-stream
Date: Tue, 28 Nov 2023 08:03:04 GMT
Etag: "c1b712b5927a315820b2fad439eb5f72"
X-Amz-Tagging-33: 22
X-Amz-Tagging-Count: 1
#文件内容
TEST UPLOAD
获取对象元数据
功能介绍
拥有对象读权限的用户可以执行HEAD操作命令获取对象元数据,返回信息包含对象的元数据信息。
请求语法
http
HEAD /<bucket-name>/<object-key> HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
X-Amz-Content-sha256:<x-amz-content-sha256>
Authorization: <authorization-header>
请求参数
参数 | 描述 | 是否必须 |
---|---|---|
ObjectKey | 对象名 类型:字符串 默认:无 | 是 |
请求消息示例
http
HEAD https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test.txt HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
X-Amz-Date: 20231128T080423Z
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=050dd38c9740f3032ce49ee1199a9a8195451ef402a7b15788487e335d427a3b
响应消息示例
http
HTTP/1.1 200 OK
Access-Control-Expose-Headers: Content-Disposition
Content-Type: application/ocet-stream
Etag: "c1b712b5927a315820b2fad439eb5f72"
X-Amz-Tagging-33: 22
X-Amz-Tagging-Count: 1
Accept-Ranges: bytes
Content-Length: 11
Date: Tue, 28 Nov 2023 08:04:24 GMT
Last-Modified: Tue, 28 Nov 2023 08:02:56 GMT
Server: osca Filer Dev osca v2.00-dae212ad
Content-Disposition: inline; filename="S3test.txt"
上传对象
功能介绍
用户在osca系统中创建了桶之后,可以采用PUT操作的方式将对象上传到桶中。上传对象操作是指在指定的桶内增加一个对象,执行该操作需要用户拥有桶的写权限。
请求语法
http
PUT /<bucket-name>/<object-key> HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
Content-Length: <object-size>
Content-Type: <content-type>
X-Amz-Content-Sha256: <content-sha256>
Authorization: <authorization-header>
<object-data>
请求参数
参数 | 描述 | 是否必须 |
---|---|---|
Content-Length | 对象的大小 类型:字符串 默认:无 | 是 |
Content-MD5 | 128位MD5摘要经过Base64编码的值,用来检查网络传输过程中文件是否损坏 类型:字符串 默认无 | 否 |
x-amz-meta- | 以该前缀开头的header都将被认为是用户自定义的元数据,比如:x-amz-meta-title: TITLE 这个header会把title:TITLE作为用户自定义元数据key-value对。类型:字符串默认:无 类型:容器 父节点:Delete | 否 |
请求消息示例
http
PUT https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test.txt HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
X-Amz-Date: 20231128T082926Z
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=content-length;content-md5;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-tagging, Signature=1e53a6b958e8d809b90d9345225fda660c41b3b36b454d59fccc8410b92a1711
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
Content-Type: application/ocet-stream
X-Amz-Tagging: 33=22
Content-Md5: wbcStZJ6MVggsvrUOetfcg==
X-Amz-Content-Sha256: 040944e2bf5d24d09f333ecf3969d48da8b3084b92108d5c3672776416f8c7ad
Content-Length: 11
响应消息示例
http
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 0
Etag: "c1b712b5927a315820b2fad439eb5f72"
Server: JWanFS FGW Server
X-Amz-Request-Id: 1701160167790292384
Date: Tue, 28 Nov 2023 08:29:27 GMT
复制对象
功能介绍
复制对象(Copy Object)特性用来为OSCA-OSS上已经存在的对象创建一个副本。
请求语法
http
PUT /<bucket-name>/<object-key> HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
Content-Length: 0
Content-Type: <content-type>
X-Amz-Copy-Source: <ource>
X-Amz-Content-Sha256: <content-sha256>
Authorization: <authorization-header>
请求参数
参数 | 描述 | 是否必须 |
---|---|---|
object | 拷贝目标 | 是 |
请求头
参数 | 描述 | 是否必须 |
---|---|---|
x-amz-copy-source | 对象源路径 | 是 |
请求消息示例
http
PUT https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test1.txt HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
X-Amz-Copy-Source: 20001-cbq/S3test.txt
X-Amz-Date: 20231128T082045Z
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-copy-source;x-amz-date, Signature=947d9b71feea10215b3b4ce9528fe9b7275f5d05d40e6623734c6973c2a56c95
响应消息示例
http
HTTP/1.1 200 OK
Content-Length: 276
X-Amz-Request-Id: 1701159646217590155
Accept-Ranges: bytes
Content-Type: application/xml
Etag: "c1b712b5927a315820b2fad439eb5f72"
Server: JWanFS FGW Server
Date: Tue, 28 Nov 2023 08:20:46 GMT
<?xml version="1.0" encoding="UTF-8"?>
<CopyObjectResult>
<LastModified
xmlns="http://s3.amazonaws.com/doc/2006-03-01/">2023-11-28T08:20:46.217462114Z
</LastModified>
<ETag
xmlns="http://s3.amazonaws.com/doc/2006-03-01/">c1b712b5927a315820b2fad439eb5f72
</ETag>
</CopyObjectResult>
上传对象标签
功能介绍
添加对象标签(PutObjectTagging)为对象添加一个标签
请求语法
http
PUT /<bucket-name>/<object-key>?tagging HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
Content-Length: <request-body-size>
Content-Type: application/xml
X-Amz-Content-Sha256: <content-sha256>
Authorization: <authorization-header>
<Tagging>
<TagSet>
<Tag>
<Key>tag-key-1</Key>
<Value>tag-value-1</Value>
</Tag>
<Tag>
<Key>tag-key-2</Key>
<Value>tag-value-2</Value>
</Tag>
</TagSet>
</Tagging>
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Tagging | 容器 | 是 | 不涉及 | 标签集合。 |
TagSet | 容器 | 是 | 不涉及 | 标签集合。 |
Tag | 容器 | 否 | 不涉及 | 标签集合。 |
Key | 字符串 | 否 | a | 标签键。 |
Value | 字符串 | 否 | 1 | 标签值。 |
请求消息示例
http
PUT https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test.txt?tagging= HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
Content-Md5: ONTicBEM6yBRQKwtRpFhXg==
Content-Length: 166
X-Amz-Date: 20231128T083258Z
X-Amz-Content-Sha256: 8d289f69118691a26df01e5c50690b91302be815769b61a04daca544bc8d4104
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=content-length;content-md5;host;x-amz-content-sha256;x-amz-date, Signature=93f72e862e80f269c0d33ff5d90ca891c6129e3e17dfa4313a21372d3f793e6d
响应消息示例
http
HTTP/1.1 200 OK
Server: JWanFS FGW Server
Date: Tue, 28 Nov 2023 08:32:59 GMT
Content-Length: 0
获取对象标签
功能介绍
获取对象的标签(GetObjectTagging)为获取对象的标签信息
请求语法
http
GET /<bucket-name>/<object-key>?tagging HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
X-Amz-Content-Sha256: <content-sha256>
Authorization: <authorization-header>
响应元素
名称 | 类型 | 描述 |
---|---|---|
Tagging | 容器 | 标签集合。 |
TagSet | 容器 | 标签集合。 |
Tag | 容器 | 标签集合。 |
Key | 字符串 | 标签键。 |
Value | 字符串 | 标签值。 |
请求消息示例
http
GET https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test.txt?tagging= HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=0ef62f4202ae2e28daea38d0a0d7639aa13e7109f5312bde83bc4f64d0266d56
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
X-Amz-Date: 20231128T083331Z
<Tagging
xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<TagSet>
<Tag>
<Key>aa</Key>
<Value>bb</Value>
</Tag>
<Tag>
<Key>cc</Key>
<Value>dd</Value>
</Tag>
</TagSet>
</Tagging>
响应消息示例
http
HTTP/1.1 200 OK
Content-Length: 205
Content-Type: application/xml
Server: JWanFS FGW Server
X-Amz-Request-Id: 1701160412389466093
Date: Tue, 28 Nov 2023 08:33:32 GMT
Accept-Ranges: bytes
<?xml version="1.0" encoding="UTF-8"?>
<Tagging
xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<TagSet>
<Tag>
<Key>aa</Key>
<Value>bb</Value>List Objects
</Tag>
<Tag>
<Key>cc</Key>
<Value>dd</Value>
</Tag>
</TagSet>
</Tagging>
删除对象标签
功能介绍
删除对象标签(DeleteObjectTagging)为对象删除其标签
请求语法
http
DELETE /<bucket-name>/<object-key>?tagging HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Date: <date>
Authorization: <authorization-header>
X-Amz-Content-Sha256: <content-sha256>
请求消息示例
http
DELETE https://fgws3-ocloud.ihep.ac.cn/20001-cbq/S3test.txt?tagging= HTTP/1.1
Host: fgws3-ocloud.ihep.ac.cn
Authorization: AWS4-HMAC-SHA256 Credential=PIM9Z4LAahZtba1BeLW2/20231128/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=5589d2bf375d466a08c0535f1546d1fac5ae415cc3a48899410d683d71a2d19b
User-Agent: aws-sdk-go/1.48.3 (go1.19.2; windows; amd64)
X-Amz-Date: 20231128T083452Z
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
响应消息示例
http
HTTP/1.1 204 No Content
Date: Tue, 28 Nov 2023 08:34:53 GMT
Server: JWanFS FGW Server