全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
对象存储 OSS

RestoreObject

更新时间:2017-06-07 13:26:11

Restore Object

针对Archive类型的Object读取,需要使用Restore操作让服务端执行解冻任务。如果一个Object是Standard或者IA类型,不要调用该接口。归档Object在执行Restore前后的状态变换过程如下:
    a. 一个Archive类型的Object初始时处于冷冻状态;
    b. 提交一次Restore操作后,Object将处于解冻中,服务端执行解冻;
    c. 待服务端执行完成解冻任务后,Object就能够进入解冻状态,此时用户可以读取Object;
    d. 解冻状态默认持续1天,用户可以延长到最多7天,之后,Object又回到初始时的冷冻状态。

对一个处于冷冻状态的归档Object执行Restore操作,会产生数据取回费用;如果一个归档Object处于解冻中或者解冻完成状态时,再次提交Restore,则不会收取数据取回费用。

请求语法

  1. POST /ObjectName?restore HTTP/1.1
  2. Host: archive-bucket.oss-cn-hangzhou.aliyuncs.com
  3. Date: GMT Date
  4. Authorization: SignatureValue

细节分析

  1. 如果是针对该Object第一次调用restore接口,则返回202。
  2. 如果已经成功调用过restore接口,且服务端仍处于解冻中,再次调用时返回409, 错误码为:RestoreAlreadyInProgress; 服务端返回该错误,代表服务端正在执行restore操作,用户只需要等待作业完成,最长等待时间4小时。
  3. 如果已经成功调用过restore接口,且服务端解冻已经完成,再次调用时返回200,且会将object的可下载时间延长一天,最多延长7天。
  4. 如果object不存在,则返回404。
  5. 如果针对非Archive类型的Object提交restore,则返回400错,错误码为:OperationNotSupported。

示例

首次提交restore的请求示例

  1. POST /oss.jpg?restore HTTP/1.1
  2. Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
  3. Date: Sat, 15 Apr 2017 07:45:28 GMT
  4. Authorization: OSS e1Unnbm1rgdnpI:y4eyu+4yje5ioRCr5PB=

返回示例

  1. HTTP/1.1 202 Accepted
  2. Date: Sat, 15 Apr 2017 07:45:28 GMT
  3. Content-Length: 0
  4. Connection: keep-alive
  5. Server: AliyunOSS
  6. x-oss-request-id: 5374A2880232A65C23002D74

再次调用,且restore没有完成时:

  1. POST /oss.jpg?restore HTTP/1.1
  2. Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
  3. Date: Sat, 15 Apr 2017 07:45:29 GMT
  4. Authorization: OSS e1Unnbm1rgdnpI:21qtGJ+ykDVmdy4eyu+NIUs=

返回示例

  1. HTTP/1.1 409 Conflict
  2. Date: Sat, 15 Apr 2017 07:45:29 GMT
  3. Content-Length: 556
  4. Connection: keep-alive
  5. Server: AliyunOSS
  6. x-oss-request-id: 5374A2880232A65C23002D74
  7. <?xml version="1.0" encoding="UTF-8"?>
  8. <Error>
  9. <Code>RestoreAlreadyInProgress</Code>
  10. <Message>The restore operation is in progress.</Message>
  11. <RequestId>58EAF141461FB42C2B000008</RequestId>
  12. <HostId>10.101.200.203</HostId>
  13. </Error>

再次调用,且restore已经完成时:

  1. POST /oss.jpg?restore HTTP/1.1
  2. Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
  3. Date: Sat, 15 Apr 2017 07:45:29 GMT
  4. Authorization: OSS e1Unnbm1rgdnpI:u6O6FMJnn+WuBwbByZxm1+y4eyu+NIUs=

返回示例

  1. HTTP/1.1 200 Ok
  2. Date: Sat, 15 Apr 2017 07:45:30 GMT
  3. Content-Length: 0
  4. Connection: keep-alive
  5. Server: AliyunOSS
  6. x-oss-request-id: 5374A2880232A65C23002D74
本文导读目录