Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2024-09-18 GMT+08:00

Copia de objetos

Funciones

Puede realizar esta operación para crear una copia de un objeto existente en OBS.

Los usuarios pueden determinar si copiar los metadatos del objeto de origen al objeto de destino (de forma predeterminada) o reemplazar los metadatos del objeto de destino por los metadatos contenidos en la solicitud. La ACL del objeto de origen no se copia en el objeto de destino. De forma predeterminada, la ACL del objeto de destino es privada. Puede establecer una ACL para el objeto de destino enviando una solicitud de API.

La solicitud de copia de un objeto debe llevar la información sobre el bucket y el objeto que se va a copiar en el campo de encabezado. El cuerpo del mensaje no se puede transportar.

Esta operación admite la encriptación del lado del servidor.

Una copia de objeto puede tener un tamaño de hasta 5 GB. Si el tamaño del objeto de origen supera los 5 GB, solo puede copiar la parte del objeto.

No se puede determinar si una solicitud se ejecuta correctamente solo con status_code en el encabezado devuelto por HTTP. Si se devuelve 200 en status_code, el servidor ha recibido la solicitud y comienza a procesar la solicitud. El cuerpo de la respuesta muestra si la copia se realiza correctamente. Si el cuerpo contiene ETag, la copia se realiza correctamente. De lo contrario, la copia falló.

Control de versiones

De forma predeterminada, x-obs-copy-source especifica la última versión del objeto de origen. Si la última versión del objeto de origen tiene un marcador de eliminación, se considera que el objeto se ha eliminado. Puede agregar versionId para solicitar encabezado x-obs-copy-source para copiar un objeto con el ID de versión especificado.

Si un bucket tiene activado el control de versiones, el sistema genera automáticamente un ID de versión único para el objeto solicitado en este bucket y devuelve el ID de versión en el encabezado de respuesta x-obs-version-id. Si el control de versiones está suspendido para el bucket, el ID de la versión del objeto es null.

Cuando el estado de control de versiones del bucket está deshabilitado, si realiza una copia de object_A y la guarda como object_B y ya existe un objeto denominado object_B, el nuevo object_B sobrescribirá al existente. Después de que la copia se ejecuta correctamente, solo se puede descargar el nuevo object_B porque el antiguo object_B se ha eliminado. Por lo tanto, antes de copiar un objeto, asegúrese de que no hay ningún objeto con el mismo nombre que la copia del objeto para evitar que los datos se eliminen por error. Durante la copia, object_A no tiene cambios.

WORM

Si un bucket tiene WORM habilitado, puede configurar políticas de retención para objetos en el bucket. Puede especificar los encabezados x-obs-object-lock-mode y x-obs-object-lock-retain-until-date para configurar una política de retención al copiar un objeto. Si no especifica estos dos encabezados pero ha configurado una política WORM predeterminada a nivel de bucket, esta política predeterminada se aplica automáticamente al objeto recién copiado. También puede configurar o actualizar una política de retención de WORM después de copiar un objeto en el bucket.

En una operación de copia, el estado de protección de objeto no se copia, por lo que el estado de protección de una copia de objeto es independiente del estado del objeto de origen. Una vez completada la copia, los cambios de retención de WORM realizados en el objeto de origen no afectan a la copia del objeto.

Objetos de Archive o Deep Archive

Si los objetos de origen están en la clase de almacenamiento Archive o Deep Archive, asegúrese de que estos objetos se han restaurado antes de copiarlos. Si un objeto de origen no se restaura o se está restaurando, su copia fallará y se devolverá el error 403 Forbidden. El fallo se describe de la siguiente manera:

ErrorCode: InvalidObjectState

ErrorMessage: Operation is not valid for the source object's storage class

Sintaxis de solicitud

1
2
3
4
5
6
7
8
9
PUT /destinationObjectName HTTP/1.1 
Host: bucketname.obs.region.myhuaweicloud.com x-obs-copy-source: /sourceBucket/sourceObject 
x-obs-metadata-directive: metadata_directive
x-obs-copy-source-if-match: etag
x-obs-copy-source-if-none-match: etag
x-obs-copy-source-if-unmodified-since: time_stamp
x-obs-copy-source-if-modified-since: time_stamp
Authorization: signature
Date: date

Parámetros de solicitud

Esta solicitud no contiene parámetros de mensaje.

Encabezados de solicitud

Puede agregar encabezados opcionales para especificar el objeto que se va a copiar. Tabla 3 describe los encabezados opcionales.

Tabla 1 Encabezados de solicitud

Encabezado

Descripción

Obligatorio

x-obs-acl

Al copiar un objeto, puede agregar este encabezado para configurar la ACL del objeto mediante las políticas comunes predefinidas, incluidas private, public-read y public-read-write. Para obtener más información sobre cada política, consulte "Configuración de una ACL mediante campos de encabezado" en ACLs.

Tipo: string

Ejemplo: x-obs-acl: acl

No

x-obs-grant-read

Al crear un objeto, puede utilizar este encabezado para conceder a todos los usuarios de una cuenta los permisos para leer el objeto y obtener los metadatos del objeto.

Tipo: string

No

x-obs-grant-read-acp

Al crear un objeto, puede utilizar este encabezado para conceder a todos los usuarios de una cuenta el permiso para obtener la ACL del objeto.

Tipo: string

No

x-obs-grant-write-acp

Al crear un objeto, puede utilizar este encabezado para conceder a todos los usuarios de una cuenta el permiso para escribir la ACL de destino.

Tipo: string

No

x-obs-grant-full-control

Al crear un objeto, puede utilizar este encabezado para conceder a todos los usuarios de una cuenta los permisos para leer el objeto, obtener los metadatos del objeto y la ACL, y escribir la ACL del objeto.

Tipo: string

No

x-obs-copy-source

Indica los nombres del bucket de origen y del objeto de origen. Si el objeto de origen tiene varias versiones, el parámetro versionId se puede utilizar para especificar la versión deseada.

Tipo: string

Restricción: la codificación de URL es necesaria para manejar caracteres de ancho completo y %.

Ejemplo: x-obs-copy-source: /source_bucket/sourceObject

x-obs-metadata-directive

Indica si los metadatos del objeto de destino se copian del objeto de origen o se sustituyen por los metadatos contenidos en la solicitud.

Tipo: string

Valores válidos: COPY y REPLACE

Valor predeterminado: COPY

Ejemplo: x-obs-metadata-directive: metadata_directive

Restricciones: los valores que no sean COPY o REPLACE dan como resultado una respuesta de error inmediata basada en 400. Si necesita modificar los metadatos (lo mismo para los objetos de origen y destino), este parámetro debe establecerse en REPLACE, de lo contrario, la solicitud no es válida y el servidor devuelve un error de código de estado HTTP 400. Este parámetro no se puede utilizar para cambiar un objeto cifrado a un objeto no cifrado (lo mismo para los objetos de origen y de destino). Si utiliza este parámetro para cambiar el objeto cifrado, el sistema devuelve 400.

No

x-obs-copy-source-if-match

Copia el objeto fuente solo si su ETag coincide con el especificado por este encabezado. De lo contrario, se devuelve un error de código de estado HTTP 412 (precondición fallida).

Tipo: string

Ejemplo: x-obs-copy-source-if-match: etag

Restricción: Este parámetro se puede usar con x-obs-copy-source-if-unmodified-since, pero no con otros parámetros de copia condicional.

No

x-obs-copy-source-if-none-match

Copia el objeto solo si su ETag no coincide con la especificada en este encabezado. De lo contrario, se devuelve un error de código de estado HTTP 412 (precondición fallida).

Tipo: string

Ejemplo: x-obs-copy-source-if-none-match: etag

Restricción: Este parámetro se puede usar con x-obs-copy-source-if-modified-since pero no con otros parámetros de copia condicional.

No

x-obs-copy-source-if-unmodified-since

Indica que el objeto de origen solo se copia si no se ha modificado desde el tiempo especificado por este encabezado. De lo contrario, se devuelve el código de error 412 (condición previa fallida). Este encabezado se puede usar con x-obs-copy-source-if-match pero no se puede usar con otros encabezados de copia condicional.

Tipo: string

Formato: cadena de tiempo HTTP que cumple con el formato especificado en http://www.ietf.org/rfc/rfc2616.txt que puede ser cualquiera de los siguientes:

  1. EEE, dd MMM aaaa HH:mm:ss z
  2. EEEE, dd-MMM-aa HH:mm:ss z
  3. EEE MMM dd HH:mm:ss aaaa

Ejemplos:

  1. x-obs-copy-source-if-unmodified-since: Sun, 06 Nov 1994 08:49:37 GMT
  2. x-obs-copy-source-if-unmodified-since: Sunday, 06-Nov-94 08:49:37 GMT
  3. x-obs-copy-source-if-unmodified-since: Sun Nov 6 08:49:37 1994

Restricción: el tiempo especificado por este encabezado no puede ser posterior a la hora actual del servidor (hora GMT), o este encabezado no tiene efecto.

No

x-obs-copy-source-if-modified-since

Indica que el objeto de origen solo se copia si se ha modificado desde el tiempo especificado por este encabezado. De lo contrario, se devuelve el código de error 412 (condición previa fallida). Este encabezado se puede usar con x-obs-copy-source-if-none-match pero no se puede usar con otros encabezados de copia condicional.

Tipo: string

Formato: cadena de tiempo HTTP que cumple con el formato especificado en http://www.ietf.org/rfc/rfc2616.txt que puede ser cualquiera de los siguientes:

  1. EEE, dd MMM aaaa HH:mm:ss z
  2. EEEE, dd-MMM-aa HH:mm:ss z
  3. EEE MMM dd HH:mm:ss aaaa

Ejemplos:

  1. x-obs-copy-source-if-unmodified-since: Sun, 06 Nov 1994 08:49:37 GMT
  2. x-obs-copy-source-if-unmodified-since: Sunday, 06-Nov-94 08:49:37 GMT
  3. x-obs-copy-source-if-unmodified-since: Sun Nov 6 08:49:37 1994

Restricción: el tiempo especificado por este encabezado no puede ser posterior a la hora actual del servidor (hora GMT), o este encabezado no tiene efecto.

No

x-obs-storage-class

Al copiar un objeto, puede utilizar este encabezado para especificar la clase de almacenamiento del objeto. Si no utiliza este encabezado, la clase de almacenamiento de objetos es la clase de almacenamiento predeterminada del bucket de destino en el que se copia el objeto.

Tipo: string

Opciones de clase de almacenamiento: STANDARD (Standard), WARM (Infrequent Access), COLD (Archive). Los valores distinguen entre mayúsculas y minúsculas.

Ejemplo: x-obs-storage-class: STANDARD

No

x-obs-persistent-headers

Al copiar un objeto, puede agregar el encabezado x-obs-persistent-headers en una solicitud HTTP para especificar uno o más encabezados de respuesta definidos por el usuario. Los encabezados de respuesta definidos por el usuario se devolverán en el encabezado de respuesta cuando recupere el objeto de destino o consulte los metadatos del objeto de destino.

Tipo: string

Formato: x-obs-persistent-headers: key1:base64_encode(value1),key2:base64_encode(value2)...

Nota: Los elementos, como key1 y key2, son encabezados definidos por el usuario. Si contienen caracteres no ASCII o irreconocibles, se pueden codificar mediante URL o Base64. El servidor procesa estos encabezados como cadenas de caracteres, pero no los decodifica. Los elementos, tales como value1 y value2, son los valores de las cabeceras correspondientes. base64_encode indica que el valor se codifica usando Base64. Un encabezado definido por el usuario y su valor codificado en Base64 se conectan usando dos puntos (:) para formar un par clave-valor. Todos los pares clave-valor se separan con una coma (,) y se colocan en el encabezado x-obs-persistent-headers. A continuación, el servidor decodifica el valor cargado.

Ejemplo: x-obs-persistent-headers: key1:dmFsdWUx,key2:dmFsdWUy

El encabezado devuelto para descargar el objeto de destino u obtener los metadatos del objeto de destino es key1:value1 or key2:value2, respectivamente.

Restricciones:

  1. Los encabezados de respuesta personalizados de esta manera no pueden tener el prefijo x-obs-. Por ejemplo, debes usar key1 en lugar de x-obs-key1 en lugar de hacerlo.
  2. Los encabezados de HTTP estándar, como host, content-md5, origin, range y Content-Disposition no se pueden especificar como los encabezados personalizados.
  3. La longitud total de este encabezado y los metadatos personalizados no puede superar los 8 KB.
  4. Si se pasan las mismas claves, los valores se separan con comas (,) y luego se devuelven en una clave.
  5. Si el objeto de origen ya tiene un encabezado de respuesta definido por el usuario, el encabezado de respuesta no se copiará en el objeto de destino.
  6. Si el valor decodificado contiene caracteres no US-ASCII o irreconocibles, el servidor procesa el valor como una cadena y lo encapsula usando ?UTF-8?B?<(str)>?= pero no decodifica el valor. Por ejemplo, el valor key1:abbc se devolverá como key1: =?UTF-8?B?abbc?=.
  7. Los valores no pueden contener espacios, signos iguales (=), comas (,), punto y coma (;), dos puntos (:) o puntos (.). Si estos caracteres son necesarios, utilice la codificación URL o Base64.

No

x-obs-website-redirect-location

Si un bucket está configurado con la función de alojamiento de sitios web estático, redirigirá las solicitudes para este objeto a otro objeto en el mismo bucket o a una URL externa. OBS almacena el valor de este encabezado en los metadatos del objeto.

Tipo: string

Valor predeterminado: ninguno

Restricción: el valor debe tener el prefijo de una barra diagonal (/), http:// o https://. La longitud del valor no puede superar los 2 KB.

No

x-obs-server-side-encryption

Indica que se utiliza SSE-KMS. Los objetos se cifran mediante SSE-KMS.

Tipo: string

Ejemplo: x-obs-server-side-encryption: kms

No. Este encabezado es necesario cuando se utiliza SSE-KMS.

x-obs-server-side-encryption-kms-key-id

Indica la clave principal para cifrar la copia de objeto cuando se utiliza SSE-KMS. Si no se proporciona este encabezado, se utilizará la clave principal predeterminada. Si no existe una clave principal por defecto, OBS creará una y la usará por defecto.

Tipo: string

Se admiten los dos formatos siguientes:

- regionID:domainID:key/key_id

2.key_id

regionID indica el ID de la región a la que pertenece la clave. domainID indica el ID del tenant al que pertenece la clave. key_id indica el ID de la clave creada en DEW.

Ejemplo:

- x-obs-server-side-encryption-kms-key-id: region:domainiddomainiddomainiddoma0001:key/4f1cd4de-ab64-4807-920a-47fc42e7f0d0

- x-obs-server-side-encryption-kms-key-id: 4f1cd4de-ab64-4807-920a-47fc42e7f0d0

No

x-obs-server-side-encryption-customer-algorithm

Indica el algoritmo de encriptación para la copia de objeto cuando se utiliza SSE-C.

Tipo: string

Ejemplo: x-obs-server-side-encryption-customer-algorithm: AES256

Restricción: Este encabezado debe usarse junto con x-obs-server-side-encryption-customer-key y x-obs-server-side-encryption-customer-key-MD5.

No. Este encabezado se requiere cuando se utiliza SSE-C.

x-obs-server-side-encryption-customer-key

Indica la clave para cifrar la copia de objeto cuando se utiliza SSE-C.

Tipo: string

Ejemplo: x-obs-server-side-encryption-customer-key:K7QkYpBkM5+hca27fsNkUnNVaobncnLht/rCB2o/9Cw=

Restricción: Este encabezado es una clave de 256 bits codificada en Base64 y debe usarse junto con x-obs-server-side-encryption-customer-algorithm y x-obs-server-side-encryption-customer-key-MD5.

No. Este encabezado se requiere cuando se utiliza SSE-C.

x-obs-server-side-encryption-customer-key-MD5

Indica el valor MD5 de la clave para cifrar la copia de objeto cuando se utiliza SSE-C. El valor MD5 se utiliza para comprobar si se produce algún error durante la transmisión de la clave.

Tipo: string

Ejemplo: x-obs-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ==

Restricción: Este encabezado es un valor MD5 de 128 bits codificado en Base64 y debe usarse junto con x-obs-server-side-encryption-customer-algorithm y x-obs-server-side-encryption-customer-key.

No. Este encabezado se requiere cuando se utiliza SSE-C.

x-obs-copy-source-server-side-encryption-customer-algorithm

Indica el algoritmo para descifrar el objeto de origen cuando se utiliza SSE-C.

Tipo: string

Ejemplo: x-obs-copy-source-server-side-encryption-customer-algorithm: AES256

Restricción: Este encabezado debe usarse junto con x-obs-copy-source-server-side-encryption-customer-key y x-obs-copy-source-server-side-encryption-customer-key-MD5.

No. Este encabezado es necesario cuando se utiliza SSE-C para copiar un objeto de origen.

x-obs-copy-source-server-side-encryption-customer-key

Indica la clave para descifrar el objeto de origen cuando se utiliza SSE-C.

Tipo: string

Ejemplo: x-obs-copy-source-server-side-encryption-customer-key: K7QkYpBkM5+hca27fsNkUnNVaobncnLht/rCB2o/9Cw=

Restricción: Este encabezado es una clave de 256 bits codificada en Base64 y debe usarse junto con x-obs-copy-source-server-side-encryption-customer-algorithm y x-obs-copy-source-server-side-encryption-customer-key-MD5.

No. Este encabezado es necesario cuando se utiliza SSE-C para copiar un objeto de origen.

x-obs-copy-source-server-side-encryption-customer-key-MD5

Indica el valor MD5 de la clave para descifrar el objeto de origen cuando se utiliza SSE-C. El valor MD5 se utiliza para comprobar si se produce algún error durante la transmisión de la clave.

Tipo: string

Ejemplo: x-obs-copy-source-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ==

Restricción: Este encabezado es un valor MD5 de 128 bits codificado en Base64 y debe usarse junto con x-obs-copy-source-server-side-encryption-customer-algorithm y x-obs-copy-source-server-side-encryption-customer-key.

No. Este encabezado es necesario cuando se utiliza SSE-C para copiar un objeto de origen.

success_action_redirect

Indica la dirección (URL) a la que se redirige una solicitud respondida correctamente.

  • Si el valor es válido y la solicitud se realiza correctamente, OBS devuelve el código de estado 303. Location contiene success_action_redirect, así como el nombre del bucket, el nombre del objeto y el objeto ETag.
  • Si este valor de parámetro no es válido, OBS omite este parámetro. En tal caso, el encabezado Location es la dirección del objeto, y OBS devuelve el código de respuesta basándose en si la operación tiene éxito o falla.

Tipo: string

No

x-obs-object-lock-mode

Modo de WORM que se aplicará al objeto. Actualmente, solo se admite COMPLIANCE. Este encabezado debe usarse junto con x-obs-object-lock-retain-until-date.

Tipo: string

Ejemplo: x-obs-object-lock-mode:COMPLIANCE

No, pero es necesario cuando x-obs-object-lock-retain-until-date está presente.

x-obs-object-lock-retain-until-date

Indica el tiempo de caducidad de la retención de Object Lock. El valor debe ser una hora UTC que cumpla con la norma ISO 8601, por ejemplo 2015-07-01T04:11:15Z. Este encabezado debe usarse junto con x-obs-object-lock-mode.

Tipo: string

Ejemplo: x-obs-object-lock-retain-until-date:2015-07-01T04:11:15Z

No, pero es necesario cuando x-obs-object-lock-mode está presente.

Para obtener más información sobre otros encabezados, consulte Tabla 3.

Elementos de solicitud

Esta solicitud no contiene elementos.

Sintaxis de respuesta

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
HTTP/1.1 status_code
Content-Type: application/xml 
Date: date
Content-Length: length

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<CopyObjectResult xmlns="http://obs.region.myhuaweicloud.com/doc/2015-06-30/">
    <LastModified>modifiedDate</LastModified> 
    <ETag>etagValue</ETag> 
</CopyObjectResult>

Encabezados de respuesta

La respuesta a la solicitud utiliza encabezados comunes. Para más detalles, consulte Tabla 1.

Además de los encabezados de respuesta comunes, los encabezados de mensaje enumerados en Tabla 2 puede ser usado.

Tabla 2 Encabezados de respuesta adicionales

Encabezado

Descripción

x-obs-copy-source-version-id

ID de versión del objeto de origen

Tipo: string

x-obs-version-id

ID de versión del objeto de destino

Tipo: string

x-obs-server-side-encryption

Este encabezado se incluye en una respuesta si se utiliza SSE-KMS.

Tipo: string

Ejemplo: x-obs-server-side-encryption: kms

x-obs-server-side-encryption-kms-key-id

Indica el ID de clave principal. Este encabezado se incluye en una respuesta cuando se usa SSE-KMS.

Tipo: string

Formato: regionID:domainID:key/key_id

regionID indica el ID de la región a la que pertenece la clave. domainID indica el ID del tenant al que pertenece la clave. key_id indica el ID de clave utilizado en esta encriptación.

Ejemplo: x-obs-server-side-encryption-kms-key-id: region:domainiddomainiddomainiddoma0001:key/4f1cd4de-ab64-4807-920a-47fc42e7f0d0

x-obs-server-side-encryption-customer-algorithm

Indica el algoritmo de encriptación. Este encabezado se incluye en una respuesta cuando se usa SSE-C.

Tipo: string

Ejemplo: x-obs-server-side-encryption-customer-algorithm: AES256

x-obs-server-side-encryption-customer-key-MD5

Indica el valor MD5 de la clave para cifrar objetos. Este encabezado se incluye en una respuesta cuando se usa SSE-C.

Tipo: string

Ejemplo: x-obs-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ==

x-obs-storage-class

Este encabezado se devuelve cuando la clase de almacenamiento de un objeto no es Standard. El valor puede ser WARM o COLD.

Tipo: string

Elementos de respuesta

Esta respuesta contiene elementos de un resultado de copia. Tabla 3 describe los elementos.

Tabla 3 Elementos de respuesta

Elemento

Descripción

CopyObjectResult

Contenedor para el resultado de la copia

Tipo: XML

LastModified

Última hora en la que se modificó el objeto

Tipo: string

ETag

Resumen MD5 de 128 bits del código Base64 de un nuevo objeto. ETag es el identificador único del contenido del objeto. Se puede utilizar para determinar si se cambia el contenido del objeto. Por ejemplo, si el valor ETag es A cuando se carga un objeto, pero este valor ha cambiado a B cuando se descarga el objeto, indica que se ha cambiado el contenido del objeto.

Tipo: string

Respuestas de error

No se devuelven respuestas de error especiales. Para obtener más información sobre las respuestas de error, consulte Tabla 2.

Ejemplo de solicitud: Copia de un objeto

Copie el objeto srcobject en el bucket al objeto destobject en el bucket examplebucket.

1
2
3
4
5
6
7
PUT /destobject HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
Date: WED, 01 Jul 2015 04:19:21 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:2rZR+iaH8xUewvUKuicLhLHpNoU=
x-obs-copy-source: /bucket/srcobject

Ejemplo de respuesta: copia de un objeto

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: 001B21A61C6C00000134031BE8005293
x-obs-id-2: MDAxQjIxQTYxQzZDMDAwMDAxMzQwMzFCRTgwMDUyOTNBQUFBQUFBQWJiYmJiYmJi
Date: WED, 01 Jul 2015 04:19:21 GMT
Content-Length: 249

<?xml version="1.0" encoding="utf-8"?>
<CopyObjectResult xmlns="http://obs.region.myhuaweicloud.com/doc/2015-06-30/">
  <LastModified>2015-07-01T00:48:07.706Z</LastModified>  
  <ETag>"507e3fff69b69bf57d303e807448560b"</ETag> 
</CopyObjectResult>

Ejemplo de solicitud: Copia de una versión de objeto

Copie un objeto multiversión y el objeto srcobject cuyo número de versión es AAABQ4uBLdLc0vycq3gAAAAEVURTRkha en el bucket bucket al objeto destobject en el bucket examplebucket.

1
2
3
4
5
6
7
PUT /destobject HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
Date: WED, 01 Jul 2015 04:20:29 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:4BLYv+1UxfRSHBMvrhVLDszxvcY=
x-obs-copy-source: /bucket/srcobject?versionId=AAABQ4uBLdLc0vycq3gAAAAEVURTRkha

Ejemplo de respuesta: copia de una versión de objeto

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: DCD2FC9CAB78000001438B8A9C898B79
x-obs-id-2: DB/qBZmbN6AIoX9mrrSNYdLxwvbO0tLR/l6/XKTT4NmZspzharwp5Z74ybAYVOgr
Content-Type: application/xml
x-obs-version-id: AAABQ4uKnOrc0vycq3gAAAAFVURTRkha
x-obs-copy-source-version-id: AAABQ4uBLdLc0vycq3gAAAAEVURTRkha
Date: WED, 01 Jul 2015 04:20:29 GMT
Transfer-Encoding: chunked

<?xml version="1.0" encoding="utf-8"?>
<CopyObjectResult xmlns="http://obs.region.myhuaweicloud.com/doc/2015-06-30/">
  <LastModified>2015-07-01T01:48:07.706Z</LastModified>  
  <ETag>"507e3fff69b69bf57d303e807448560b"</ETag> 
</CopyObjectResult>