日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

CopyObject

調(diào)用CopyObject接口拷貝同一地域下相同或不同存儲空間(Bucket)之間的文件(Object)。

版本控制

x-oss-copy-source默認拷貝Object的當前版本,您可以在x-oss-copy-source中加入versionId來拷貝指定的Object版本。拷貝Object時,如果源Object的對應(yīng)版本為刪除標記,則返回404表示該Object不存在。

如果需要恢復(fù)Object的早期版本為當前版本,您只需將Object的早期版本拷貝到同一個Bucket中,OSS會將該Object對應(yīng)早期版本置為當前版本。

如果目標Bucket已開啟版本控制,OSS將會為新拷貝的Object自動生成唯一的版本ID,此版本ID將會在響應(yīng)Header中的x-oss-version-id返回。如果目標Bucket未開啟或者暫停了版本控制,OSS將會為新拷貝的Object自動生成version IDnull的版本,且會覆蓋原有versionIdnull的版本。

使用限制

  • Object大小限制

    • 如果源Bucket和目標Bucket相同,且通過CopyObject拷貝時不修改Object的存儲類型,則Object的大小可以大于5 GB。

    • 如果源Bucket和目標Bucket不同,且通過CopyObject拷貝時不修改Object的存儲類型,則Object的大小不能大于5 GB。

    • 通過CopyObject拷貝時修改Object的存儲類型,則Object的大小不能大于1 GB。如果Object大小超過1 GB,需使用UploadPartCopy接口。

  • 權(quán)限說明

    使用CopyObjectUploadPartCopy接口均要求對源Object有讀權(quán)限。

  • 在非版本控制的Bucket中使用CopyObject,且源Object與目標Object為同一個Object時:

    • 拷貝過程中不涉及修改源Object的加密類型或者存儲類型,則OSS只修改源Object的元數(shù)據(jù),不拷貝源Object的內(nèi)容。

    • 拷貝過程中涉及修改源Object的加密類型或者存儲類型,則OSS在修改源Object元數(shù)據(jù)的同時還會拷貝源Object的內(nèi)容。

  • Object為軟鏈接

    通過CopyObject接口拷貝時,只拷貝軟鏈接,不支持拷貝軟鏈接指向的文件內(nèi)容。

計量計費

  • 調(diào)用一次CopyObject接口只對目標Object所在的Bucket增加一次Put請求次數(shù)。

  • 調(diào)用CopyObject接口會對目標Object所在的Bucket增加相應(yīng)的存儲量。

  • 調(diào)用CopyObject接口更改Object存儲類型會涉及數(shù)據(jù)覆蓋。例如低頻訪問IA創(chuàng)建后10天內(nèi)被覆蓋為標準存儲Standard,則會產(chǎn)生20天的低頻訪問不足規(guī)定時長容量費用。關(guān)于存儲費用的更多信息,請參見存儲費用。

請求語法

PUT /DestObjectName HTTP/1.1
Host: DestBucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
x-oss-copy-source: /SourceBucketName/SourceObjectName

當您在OSS ON云盒中調(diào)用該接口時,您需要將Host替換為云盒Endpoint。更多信息,請參見云盒Endpoint

請求頭

拷貝操作涉及到的請求頭均以x-oss-開頭,因此所有請求頭都要加到簽名字符串中。

名稱

類型

是否必選

取值

描述

x-oss-forbid-overwrite

字符串

true

指定CopyObject操作時是否覆蓋同名目標Object。當目標Bucket處于已開啟或已暫停版本控制狀態(tài)時,x-oss-forbid-overwrite請求Header設(shè)置無效,即允許覆蓋同名Object。

  • 未指定x-oss-forbid-overwrite或者指定x-oss-forbid-overwritefalse時,表示允許覆蓋同名目標Object。

  • 指定x-oss-forbid-overwritetrue時,表示禁止覆蓋同名Object。

設(shè)置x-oss-forbid-overwrite請求Header會導(dǎo)致QPS處理性能下降,如果您有大量的操作需要使用x-x-oss-forbid-overwrite請求Header(QPS>1000),請聯(lián)系技術(shù)支持,避免影響您的業(yè)務(wù)。

默認值:false

x-oss-copy-source

字符串

/oss-example/oss.jpg

指定拷貝的源地址。

默認值:無

x-oss-copy-source-if-match

字符串

5B3C1A2E053D763E1B002CC607C5****

如果源ObjectETag值和您提供的ETag相等,則執(zhí)行拷貝操作,并返回200 OK。

默認值:無

x-oss-copy-source-if-none-match

字符串

5B3C1A2E053D763E1B002CC607C5****

如果源ObjectETag值和您提供的ETag不相等,則執(zhí)行拷貝操作,并返回200 OK。

默認值:無

x-oss-copy-source-if-unmodified-since

字符串

Mon, 11 May 2020 08:16:23 GMT

如果指定的時間等于或者晚于文件實際修改時間,則正??截愇募?,并返回200 OK。

默認值:無

x-oss-copy-source-if-modified-since

字符串

Mon, 11 May 2020 08:16:23 GMT

如果指定的時間早于文件實際修改時間,則正??截愇募⒎祷?span id="z68uejxpaoma" class="help-letter-space">200 OK。

默認值:無

x-oss-metadata-directive

字符串

COPY

指定如何設(shè)置目標Object的元數(shù)據(jù)。

  • COPY(默認值):復(fù)制源Object的元數(shù)據(jù)到目標Object。

    OSS不會復(fù)制源Objectx-oss-server-side-encryption屬性配置到目標Object。目標Object的服務(wù)器端加密編碼方式取決于當前拷貝操作是否指定了x-oss-server-side-encryption。

  • REPLACE:忽略源Object的元數(shù)據(jù),直接采用請求中指定的元數(shù)據(jù)。

重要

如果拷貝操作的源Object地址和目標Object地址相同,且未開啟版本控制時,則無論x-oss-metadata-directive為何值,都會忽略源Object的元數(shù)據(jù),目標Object將直接采用請求中指定的元數(shù)據(jù)。

x-oss-server-side-encryption

字符串

AES256

指定OSS創(chuàng)建目標Object時,服務(wù)器端使用熵編碼加密算法 。

取值:AES256 、KMS

說明

OSS ON云盒使用場景中,僅支持AES256。

您只有購買了KMS套件,才能使用KMS加密算法,否則OSS會返回KmsServiceNotEnabled錯誤。

  • 如果拷貝操作中未指定x-oss-server-side-encryption,則無論源Object是否進行過服務(wù)器端加密編碼,拷貝后的目標Object均不進行服務(wù)器端加密編碼。

  • 如果拷貝操作中指定了x-oss-server-side-encryption,則無論源Object是否進行過服務(wù)器端加密編碼,拷貝后的目標Object均會進行服務(wù)器端加密編碼。并且拷貝操作的響應(yīng)頭中會包含x-oss-server-side-encryption,值為目標Object的加密算法。

    在目標Object被下載時,響應(yīng)頭中也會包含x-oss-server-side-encryption,值為該Object的加密算法。

x-oss-server-side-encryption-key-id

字符串

9468da86-3509-4f8d-a61e-6eab1eac****

表示KMS托管的用戶主密鑰。

該參數(shù)僅在x-oss-server-side-encryptionKMS時有效。

說明

OSS ON云盒使用場景中,不支持使用此選項。

x-oss-object-acl

字符串

private

指定OSS創(chuàng)建目標Object時的訪問權(quán)限。

取值:

  • default(默認):Object遵循所在存儲空間的訪問權(quán)限。

  • private:Object是私有資源。只有Object的擁有者和授權(quán)用戶有該Object的讀寫權(quán)限,其他用戶沒有權(quán)限操作該Object。

  • public-read:Object是公共讀資源。只有Object的擁有者和授權(quán)用戶有該Object的讀寫權(quán)限,其他用戶只有該Object的讀權(quán)限。請謹慎使用該權(quán)限。

  • public-read-write:Object是公共讀寫資源。所有用戶都有該Object的讀寫權(quán)限。請謹慎使用該權(quán)限。

關(guān)于訪問權(quán)限的更多信息,請參見設(shè)置Object ACL

x-oss-storage-class

字符串

Standard

指定Object的存儲類型。

對于任意存儲類型Bucket,如果上傳Object時指定該值,則此次上傳的Object將存儲為指定的類型。例如在IA類型的Bucket中上傳Object時,如果指定x-oss-storage-classStandard,則該Object直接存儲為Standard類型。

取值:

  • Standard(默認):標準存儲

    說明

    OSS ON云盒使用場景中,僅支持Standard類型。

  • IA:低頻訪問

  • Archive:歸檔存儲

  • ColdArchive:冷歸檔存儲

  • DeepColdArchive:深度冷歸檔存儲

    重要

    如果要拷貝的文件數(shù)量較多,直接指定拷貝后的文件存儲類型為深度冷歸檔類型會造成較高的PUT類請求費用。建議您通過生命周期規(guī)則將文件轉(zhuǎn)儲為深度冷歸檔類型,從而降低PUT類請求費用。

關(guān)于存儲類型的更多信息,請參見存儲類型概述。

x-oss-tagging

字符串

a:1

指定Object的對象標簽,可同時設(shè)置多個標簽,例如TagA=A&TagB=B。

說明

KeyValue需要先進行URL編碼,如果某項沒有“=”,則看作Value為空字符串。

x-oss-tagging-directive

字符串

Copy

指定如何設(shè)置目標Object的對象標簽。取值如下:

  • Copy(默認值):復(fù)制源Object的對象標簽到目標 Object。

  • Replace:忽略源Object的對象標簽,直接采用請求中指定的對象標簽。

此接口還需要包含Host、Date等公共請求頭。更多信息,請參見公共請求頭(Common Request Headers)

響應(yīng)頭

此接口僅包含公共響應(yīng)頭。更多信息,請參見公共響應(yīng)頭(Common Response Headers)。

響應(yīng)元素

名稱

類型

示例值

描述

CopyObjectResult

容器

不涉及

保存CopyObject的結(jié)果。

默認值:無

ETag

字符串

5B3C1A2E053D763E1B002CC607C5****

目標ObjectETag值。

父元素:CopyObjectResult

LastModified

字符串

Fri, 24 Feb 2012 07:18:48 GMT

目標Object最后更新時間。

父元素:CopyObjectResult

示例

  • 未開啟版本控制

    請求示例

    PUT /test%2FAK.txt HTTP/1.1
    Host: tesx.oss-cn-zhangjiakou.aliyuncs.com
    Accept-Encoding: identity
    User-Agent: aliyun-sdk-python/2.6.0(Windows/7/AMD64;3.7.0)
    Accept: text/html
    Connection: keep-alive
    x-oss-copy-source: /test/AK.txt
    date: Fri, 28 Dec 2018 09:41:55 GMT
    authorization: OSS qn6qrrqxo2oawuk53otfjbyc:gmnwPKuu20LQEjd+iPkL259A****
    Content-Length: 0

    返回示例

    x-oss-hash-crc64ecma表示Object64CRC值。該64CRC值根據(jù)ECMA-182標準計算得出。進行CopyObject操作時,生成的Object不保證具有64CRC值。

    HTTP/1.1 200 OK
    Server: AliyunOSS
    Date: Fri, 28 Dec 2018 09:41:56 GMT
    Content-Type: application/xml
    Content-Length: 184
    Connection: keep-alive
    x-oss-request-id: 5C25EFE4462CE00EC6D87156
    ETag: "F2064A169EE92E9775EE5324D0B1****"
    x-oss-hash-crc64ecma: 12753002859196105360
    x-oss-server-time: 150
    <?xml version="1.0" encoding="UTF-8"?>
    <CopyObjectResult>
      <ETag>"F2064A169EE92E9775EE5324D0B1****"</ETag>
      <LastModified>2018-12-28T09:41:56.000Z</LastModified>
    </CopyObjectResult>
  • 未指定versionId進行拷貝

    請求示例

    PUT /dest-object-example HTTP/1.1
    Host: versioning-copy.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 09 Apr 2019 03:45:32 GMT
    Authorization: OSS qn6q**************:77Dv****************
    x-oss-copy-source: /versioning-copy-source/source-object

    返回示例

    示例中的x-oss-copy-source-version-id為源拷貝ObjectversionId,在該示例中即為源拷貝Object的當前版本。x-oss-version-id為新拷貝生成ObjectversionId。

    HTTP/1.1 200 OK
    x-oss-copy-source-version-id: CAEQNRiBgIC28uaA0BYiIDY5OGIwNmNlNjYyMTRjNTc4N2M2OGNiMjZkZTQ2****
    x-oss-version-id: CAEQNxiBgIDG8uaA0BYiIGZhZDRkZTk5Zjg3YzRhNzdiMWEwZGViNDM1NTFh****
    x-oss-request-id: 5CAC155CB7AEADE01700****
    Content-Type: application/xml
    Content-Length: 184
    Connection: keep-alive
    Date: Tue, 09 Apr 2019 03:45:32 GMT
    Server: AliyunOSS
    <?xml version="1.0" encoding="UTF-8"?>
    <CopyObjectResult>
      <ETag>"C81E728D9D4C2F636F067F89CC14****"</ETag>
      <LastModified>2019-04-09T03:45:32.000Z</LastModified>
    </CopyObjectResult>
  • 指定versionId進行拷貝

    請求示例

    PUT /dest-object-example HTTP/1.1
    Host: versioning-copy.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 09 Apr 2019 03:45:32 GMT
    Authorization: OSS qn6q**************:77Dv****************
    x-oss-copy-source: /versioning-copy-source/source-object?versionId=CAEQNRiBgICv8uaA0BYiIDliZDc3MTc1NjE5MjRkMDI4ZGU4MTZkYjY1ZDgy****

    返回示例

    示例中的x-oss-copy-source-version-id為源拷貝ObjectversionId,在該示例中即為x-oss-copy-sourceversionId指定的版本,x-oss-version-id為新拷貝生成ObjectversionId。

    HTTP/1.1 200 OK
    x-oss-copy-source-version-id: CAEQNRiBgICv8uaA0BYiIDliZDc3MTc1NjE5MjRkMDI4ZGU4MTZkYjY1ZDgy****
    x-oss-version-id: CAEQNxiBgMDP8uaA0BYiIDIyNGNhZDQ1M2M3NzRkZThiNzE0N2I3ZDkxOWY4****
    x-oss-request-id: 5CAC155CB7AEADE01700****
    Content-Type: application/xml
    Content-Length: 184
    Connection: keep-alive
    Date: Tue, 09 Apr 2019 03:45:32 GMT
    Server: AliyunOSS
    <?xml version="1.0" encoding="UTF-8"?>
    <CopyObjectResult>
      <ETag>"C4CA4238A0B923820DCC509A6F75****"</ETag>
      <LastModified>2019-04-09T03:45:32.000Z</LastModified>
    </CopyObjectResult>

SDK

此接口所對應(yīng)的各語言SDK如下:

錯誤碼

錯誤碼

HTTP狀態(tài)碼

描述

InvalidArgument

400

x-oss-storage-class等參數(shù)的值無效。

Precondition Failed

412

返回該錯誤的可能原因如下:

  • 指定了x-oss-copy-source-if-match請求頭,但源ObjectETag值和您提供的ETag值不相等。

  • 指定了x-oss-copy-source-if-unmodified-since請求頭,但指定的時間早于文件實際修改時間。

Not Modified

304

返回該錯誤的可能原因如下:

  • 指定了x-oss-copy-source-if-none-match請求頭,但源ObjectETag值和您提供的ETag值相等。

  • 指定了x-oss-copy-source-if-modified-since請求頭,但源Object在指定的時間后沒被修改過。

KmsServiceNotEnabled

403

x-oss-server-side-encryption指定為KMS,但沒有預(yù)先購買KMS套件。

FileAlreadyExists

409

當請求的Header中攜帶x-oss-forbid-overwrite=true時,表示禁止覆蓋同名文件。如果文件已存在,則返回該錯誤。

FileImmutable

409

Bucket內(nèi)的數(shù)據(jù)處于被保護狀態(tài)時,如果嘗試刪除或修改這些數(shù)據(jù),則返回該錯誤。

常見問題

CopyObject是否支持批量復(fù)制文件?

不支持。CopyObject用于復(fù)制單個文件。如果需要批量復(fù)制文件,您可以使用ossutil工具。更多信息,請參見cp(拷貝文件)