全部产品
Search
文档中心

对象存储 OSS:RestoreObject

更新时间:Dec 04, 2023

调用RestoreObject接口解冻归档类型、冷归档、深度冷归档类型的文件(Object)。

解冻过程

不同存储类型的Object的解冻过程相同。Object的解冻过程如下。

  1. 初始时,Object处于冷冻状态。

  2. 提交一次解冻请求后,Object处于解冻中状态。

  3. 服务端完成解冻任务后,Object进入解冻状态。此时您可以读取Object。

  4. 如果Object处于解冻状态时,再次提交一次解冻请求,Object的解冻状态持续时间在原基础上累加。延长后的总时长不能超过每种存储类型的解冻状态持续时间的最大值。

  5. 解冻状态结束后,Object再次返回到冷冻状态。

注意事项

  • RestoreObject接口只针对归档、冷归档和深度冷归档类型的Object,不适用于标准类型和低频访问类型的Object。

  • 对于Object第一次调用RestoreObject接口,则返回202。如果已经成功调用过RestoreObject接口,且Object已完成解冻,再次调用时返回200 OK。

  • 对于正在解冻中的Object不支持重复调用RestoreObject接口,需要等待Object解冻完成后再次调用RestoreObject接口。否则报错409。

  • 对于开启版本控制的Bucket,Object的各个版本可以对应不同的存储类型。调用RestoreObject接口默认解冻Object当前版本,您可以通过指定versionId的方式来解冻Object指定版本。

计费说明

  • 解冻归档、冷归档和深度冷归档类型的Object会产生数据取回费用。更多信息,请参见数据处理费用

  • 归档类型Object可达到最长7天的解冻持续时间,冷归档和深度冷归档类型Object可达到最长365天的解冻持续时间,在此期间不再重复收取数据取回费用。

  • 解冻状态结束后,Object又回到冷冻状态,再次执行解冻操作会收取数据取回费用。

  • 归档类型Object在解冻过程中以及解冻完成后,均保持归档存储类型计算存储费用。

  • 冷归档和深度冷归档类型Object在数据解冻时会生成一份标准存储类型的文件副本用于访问,该文件在解冻时间结束前会以标准存储的存储费率计算临时存储费用。更多信息,请参见临时存储费用

请求语法

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

请求头

此接口仅包含公共请求头。更多信息,请参见公共请求头(Common Request Headers)

请求参数

名称

类型

是否必选

示例值

描述

RestoreRequest

容器

不涉及

解冻请求信息。

子节点:Days、JobParameters

Days

整型

2

设置归档、冷归档以及深度冷归档类型Object的解冻天数。

  • 归档类型Object解冻天数的取值范围为1~7,单位为天。

  • 冷归档以及深度冷归档类型Object解冻天数的取值范围为1~365,单位为天。

父节点:RestoreRequest

JobParameters

容器

不涉及

解冻优先级的容器。仅在解冻冷归档、深度冷归档类型的Object时有效。

如果不传入JobParameters节点,则解冻优先级默认为Standard。

父节点:RestoreRequest

子节点:Tier

Tier

字符串

Standard

冷归档、深度冷归档类型Object解冻优先级。取值范围如下:

  • 冷归档类型Object

    • 高优先级(Expedited):表示1小时内完成解冻。

    • 标准(Standard,默认值):表示2~5小时内完成解冻。

    • 批量(Bulk):表示5~12小时内完成解冻。

  • 深度冷归档类型Object

    • 高优先级(Expedited):表示12小时内完成解冻。

    • 标准(Standard,默认值):表示48小时内完成解冻。

父节点:JobParameters

响应头

名称

类型

示例值

描述

x-oss-object-restore-priority

字符串

Standard

解冻优先级。仅处于解冻状态的冷归档或者深度冷归档类型的Object才显示该字段。

x-oss-version-id

字符串

CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh****

Object的版本ID。仅解冻Object指定版本时才显示该字段。

此接口还包含公共响应头。更多信息,请参见公共响应头(Common Response Headers)

示例

  • 第一次对处于冷冻状态的归档类型Object提交解冻请求

    请求示例

    POST /oss.jpg?restore HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Sat, 15 Apr 2017 07:45:28 GMT
    Authorization: OSS e1Unnbm1rg****:y4eyu+4yje5ioRCr****

    返回示例

    HTTP/1.1 202 Accepted
    Date: Sat, 15 Apr 2017 07:45:28 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-request-id: 5374A2880232A65C23002D74
  • 对处于解冻中状态的归档类型Object提交解冻请求

    请求示例

    POST /oss.jpg?restore HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Sat, 15 Apr 2017 07:45:29 GMT
    Authorization: OSS e1Unnbm1rg****:21qtGJ+ykDVmdy4eyu+N****

    返回示例

    HTTP/1.1 409 Conflict
    Date: Sat, 15 Apr 2017 07:45:29 GMT
    Content-Length: 556
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-request-id: 5374A2880232A65C23002D74
    <?xml version="1.0" encoding="UTF-8"?>
    <Error>
      <Code>RestoreAlreadyInProgress</Code>
      <Message>The restore operation is in progress.</Message>
      <RequestId>58EAF141461FB42C2B000008</RequestId>
      <HostId>10.101.XX.XX</HostId>
    </Error>
  • 对处于解冻状态的归档类型Object提交解冻请求

    请求示例

    POST /oss.jpg?restore HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Sat, 15 Apr 2017 07:45:29 GMT
    Authorization: OSS e1Unnbm1rg****:u6O6FMJnn+WuBwbByZxm1+y4eyu+N****
    <RestoreRequest>
      <Days>2</Days>
    </RestoreRequest>

    返回示例

    HTTP/1.1 200 Ok
    Date: Sat, 15 Apr 2017 07:45:30 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-request-id: 5374A2880232A65C23002D74
  • 对处于解冻状态的冷归档或者深度冷归档类型Object提交解冻请求

    请求示例

    POST /coldarchiveobject?restore HTTP/1.1
    Host: cold-archive-bucket.oss-cn-hangzhou.aliyuncs.com
    User-Agent: aliyun-sdk-go/v2.1.0 (Darwin/17.5.0/x86_64;go1.11.8)/ossutil-v1.6.12
    Content-Length: 99
    Authorization: OSS LTAI4FjmjjhjiYK6kMaV****:Gi1x7YHqTw+NQCJo0fKBHcYQ****
    Content-Type: text/plain; charset=utf-8
    Date: Tue, 21 Apr 2020 11:09:19 GMT
    Accept-Encoding: gzip
    <RestoreRequest>
      <Days>2</Days>
      <JobParameters>
        <Tier>Standard</Tier>
      </JobParameters>
    </RestoreRequest>

    返回示例

    HTTP/1.1 200 OK
    Server: AliyunOSS
    Date: Tue, 21 Apr 2020 11:09:19 GMT
    Content-Length: 0
    Connection: keep-alive
    x-oss-request-id: 5E9ED45F093E2F3930318EA0
    x-oss-object-restore-priority: Standard
    x-oss-server-time: 10
  • 指定versionId来解冻指定版本的Object

    请求示例

    POST /oss.jpg?restore&versionId=CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh**** HTTP/1.1
    Host: oss-archive-example.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 09 Apr 2019 06:50:48 GMT
    Authorization: OSS o3shiyktjw1****:2JND5qqlAlaA1/kLO4kBbGTw****

    返回示例

    HTTP/1.1 202 Accepted
    Date: Tue, 09 Apr 2019 06:50:48 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
    x-oss-version-id: CAEQNRiBgMClj7qD0BYiIDQ5Y2QyMjc3NGZkODRlMTU5M2VkY2U3MWRiNGRh****
    x-oss-request-id: 5CAC40C8B7AEADE017000653

SDK

此接口对应的各语言SDK如下:

错误码

错误码

HTTP状态码

描述

OperationNotSupported

400

目标Object不支持解冻,该Object不是归档、冷归档或者深度冷归档类型。

NoSuchKey

404

目标Object不存在。

RestoreAlreadyInProgress

409

您已经成功调用过RestoreObject接口,且服务端正在执行解冻操作。请不要重复提交RestoreObject。