Set Blob MetadataSet Blob Metadata

La operación Set Blob Metadata establece metadatos definidos por el usuario para el blob especificado como uno o varios pares nombre-valor.The Set Blob Metadata operation sets user-defined metadata for the specified blob as one or more name-value pairs.

SolicitudRequest

La solicitud Set Blob Metadata se puede construir como sigue.The Set Blob Metadata request may be constructed as follows. Se recomienda HTTPS.HTTPS is recommended. Reemplace mi cuenta por el nombre de la cuenta de almacenamiento:Replace myaccount with the name of your storage account:

URI de solicitud del método PUTPUT Method Request URI Versión HTTPHTTP Version
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=metadata HTTP/1.1HTTP/1.1

URI de servicio de almacenamiento emuladoEmulated Storage Service URI

Al realizar una solicitud en el servicio de almacenamiento emulado, especifique el nombre de host del emulador y el puerto del servicio Blob como 127.0.0.1:10000, seguido del nombre de la cuenta de almacenamiento emulado:When making a request against the emulated storage service, specify the emulator hostname and Blob service port as 127.0.0.1:10000, followed by the emulated storage account name:

URI de solicitud del método PUTPUT Method Request URI Versión HTTPHTTP Version
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=metadata HTTP/1.1HTTP/1.1

Para obtener más información, vea uso del emulador de Azure Storage para desarrollo y pruebas.For more information, see Using the Azure Storage Emulator for Development and Testing.

Parámetros de identificador URIURI Parameters

Se pueden especificar los parámetros adicionales siguientes en el URI de solicitud.The following additional parameters may be specified on the request URI.

ParámetroParameter DescripciónDescription
timeout Opcional.Optional. El parámetro timeout se expresa en segundos.The timeout parameter is expressed in seconds. Para obtener más información, consulte configuración de tiempos de espera para las operaciones de BLOB Service.For more information, see Setting Timeouts for Blob Service Operations.

Encabezados de solicitudRequest Headers

En la tabla siguiente se describen los encabezados de solicitud requeridos y opcionales.The following table describes required and optional request headers.

Encabezado de la solicitudRequest Header DescripciónDescription
Authorization Obligatorio.Required. Especifica el esquema de autorización, el nombre de cuenta y la firma.Specifies the authorization scheme, account name, and signature. Para obtener más información, consulte autorización de solicitudes para Azure Storage.For more information, see Authorize requests to Azure Storage.
Date o x-ms-dateDate or x-ms-date Obligatorio.Required. Especifica la hora universal coordinada (UTC) de la solicitud.Specifies the Coordinated Universal Time (UTC) for the request. Para obtener más información, consulte autorización de solicitudes para Azure Storage.For more information, see Authorize requests to Azure Storage.
x-ms-version Obligatorio para todas las solicitudes autorizadas.Required for all authorized requests. Especifica la versión de la operación que se utiliza para esta solicitud.Specifies the version of the operation to use for this request. Para obtener más información, vea control de versiones de los servicios de Azure Storage.For more information, see Versioning for the Azure Storage Services.
x-ms-meta-name:value Opcional.Optional. Establece un par nombre-valor para el blob.Sets a name-value pair for the blob.

Cada llamada a esta operación reemplaza todos los metadatos existentes adjuntados al blob.Each call to this operation replaces all existing metadata attached to the blob. Para quitar todos los metadatos del blob, llame a esta operación sin encabezados de metadatos.To remove all metadata from the blob, call this operation with no metadata headers.

Tenga en cuenta que a partir de la versión 2009-09-19, los nombres de los metadatos deben cumplir las reglas de nomenclatura para los identificadores de C#.Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers.
x-ms-encryption-scope Opcional.Optional. Indica el ámbito de cifrado que se va a usar para cifrar el contenido de la solicitud.Indicates the encryption scope to use to encrypt the request contents. Este encabezado es compatible con las versiones 2019-02-02 o posteriores.This header is supported in versions 2019-02-02 or later.
x-ms-lease-id:<ID> Obligatorio si el blob tiene una concesión activa.Required if the blob has an active lease. Para realizar esta operación en un blob con una concesión activa, especifique el identificador de concesión válido de este encabezado.To perform this operation on a blob with an active lease, specify the valid lease ID for this header.
x-ms-client-request-id Opcional.Optional. Proporciona un valor opaco generado por el cliente con un límite de 1 KiB de caracteres que se registra en los registros de análisis cuando el registro de análisis de almacenamiento está habilitado.Provides a client-generated, opaque value with a 1 KiB character limit that is recorded in the analytics logs when storage analytics logging is enabled. Se recomienda encarecidamente usar este encabezado para correlacionar las actividades del lado cliente con las solicitudes recibidas por el servidor.Using this header is highly recommended for correlating client-side activities with requests received by the server. Para obtener más información, consulte acerca del registro de Storage Analytics y el registro de Azure: uso de registros para realizar un seguimiento de las solicitudes de almacenamiento.For more information, see About Storage Analytics Logging and Azure Logging: Using Logs to Track Storage Requests.

Esta operación también admite el uso de encabezados condicionales que permiten establecer los metadatos del blob solo si se cumple una condición especificada.This operation also supports the use of conditional headers to set blob metadata only if a specified condition is met. Para obtener más información, consulte Especificación de encabezados condicionales para las operaciones de Blob Service.For more information, see Specifying Conditional Headers for Blob Service Operations.

Encabezados de solicitud (claves de cifrado proporcionadas por el cliente)Request Headers (Customer-provided encryption keys)

A partir de la versión 2019-02-02, se pueden especificar los siguientes encabezados en la solicitud para cifrar un BLOB con una clave proporcionada por el cliente.Beginning with version 2019-02-02, the following headers may be specified on the request to encrypt a blob with a customer-provided key. El cifrado con una clave proporcionada por el cliente (y el conjunto de encabezados correspondiente) es opcional.Encryption with a customer-provided key (and the corresponding set of headers) is optional. Si un BLOB se cifró previamente con una clave proporcionada por el cliente, estos encabezados deben incluirse en la solicitud para completar correctamente la operación de escritura.If a blob has previously been encrypted with a customer-provided key, then these headers must be included on the request to complete the write operation successfully.

Encabezado de solicitudRequest header DescripciónDescription
x-ms-encryption-key Obligatorio.Required. La clave de cifrado AES-256 codificada en Base64.The Base64-encoded AES-256 encryption key.
x-ms-encryption-key-sha256 Obligatorio.Required. El hash SHA256 con codificación Base64 de la clave de cifrado.The Base64-encoded SHA256 hash of the encryption key.
x-ms-encryption-algorithm: AES256 Obligatorio.Required. Especifica el algoritmo que se va a usar para el cifrado.Specifies the algorithm to use for encryption. El valor de este encabezado debe ser AES256 .The value of this header must be AES256.

Cuerpo de la solicitudRequest Body

Ninguno.None.

RespuestaResponse

La respuesta incluye un código de estado HTTP y un conjunto de encabezados de respuesta.The response includes an HTTP status code and a set of response headers.

Código de estadoStatus Code

Una operación correcta devuelve el código de estado 200 Correcto.A successful operation returns status code 200 (OK).

Para obtener información sobre los códigos de estado, vea códigos de estado y de error.For information about status codes, see Status and Error Codes.

Encabezados de respuestaResponse Headers

La respuesta para esta operación incluye los encabezados siguientes.The response for this operation includes the following headers. La respuesta también puede incluir otros encabezados HTTP estándar.The response may also include additional standard HTTP headers. Todos los encabezados estándar cumplen la especificación del protocolo HTTP/1.1.All standard headers conform to the HTTP/1.1 protocol specification.

Encabezado de respuestaResponse header DescripciónDescription
ETag La ETag contiene un valor que se puede utilizar para realizar operaciones condicionales.The ETag contains a value that you can use to perform operations conditionally. Consulte especificar encabezados condicionales para las operaciones de BLOB Service para obtener más información.See Specifying Conditional Headers for Blob Service Operations for more information. Si la versión de la solicitud es 2011-08-18 o una más reciente, el valor ETag estará entre comillas.If the request version is 2011-08-18 or newer, the ETag value will be in quotes.
Last-Modified La fecha y la hora en la que se modificó por última vez el blob.The date/time that the blob was last modified. El formato de la fecha sigue las convenciones de RFC 1123.The date format follows RFC 1123. Para obtener más información, vea representación de valores de fecha y hora en encabezados.For more information, see Representation of Date-Time Values in Headers.

Cualquier operación de escritura realizada en el blob (incluidas las actualizaciones de los metadatos o las propiedades del blob) cambia la hora de la última modificación del blob.Any write operation on the blob (including updates on the blob's metadata or properties) changes the last modified time of the blob.
x-ms-request-id Este encabezado identifica de forma única la solicitud que se realizó y se puede utilizar para solucionar problemas relacionados con esta.This header uniquely identifies the request that was made and can be used for troubleshooting the request. Para obtener más información, consulte solución de problemas de las operaciones de API.For more information, see Troubleshooting API Operations.
x-ms-version Indica la versión del servicio Blob utilizado para ejecutar la solicitud.Indicates the version of the Blob service used to execute the request. Este encabezado se devuelve para las solicitudes realizadas en la versión 2009-09-19 y versiones posteriores.This header is returned for requests made against version 2009-09-19 and above.
Date Valor de fecha y hora UTC generado por el servicio que indica la hora a la que se inició la respuesta.A UTC date/time value generated by the service that indicates the time at which the response was initiated.
x-ms-request-server-encrypted: true/false Versión 2015-12-11 o posterior.Version 2015-12-11 or newer. El valor de este encabezado se establece en true si el contenido de la solicitud se cifra correctamente mediante el algoritmo especificado; de false lo contrario,.The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise.
x-ms-encryption-key-sha256 Versión 2019-02-02 o posterior.Version 2019-02-02 or newer. Se devuelve este encabezado si la solicitud usó una clave proporcionada por el cliente para el cifrado, de modo que el cliente pueda asegurarse de que el contenido de la solicitud se cifre correctamente con la clave proporcionada.This header is returned if the request used a customer-provided key for encryption, so the client can ensure the contents of the request are successfully encrypted using the provided key.
x-ms-encryption-scope Versión 2019-02-02 o posterior.Version 2019-02-02 or newer. Este encabezado se devuelve si la solicitud usaba un ámbito de cifrado, por lo que el cliente puede asegurarse de que el contenido de la solicitud se cifre correctamente mediante el ámbito de cifrado.This header is returned if the request used an encryption scope, so the client can ensure the contents of the request are successfully encrypted using the encryption scope.
x-ms-client-request-id Este encabezado se puede usar para solucionar problemas de las solicitudes y las respuestas correspondientes.This header can be used to troubleshoot requests and corresponding responses. El valor de este encabezado es igual al valor del x-ms-client-request-id encabezado si está presente en la solicitud y el valor tiene como máximo 1024 caracteres ASCII visibles.The value of this header is equal to the value of the x-ms-client-request-id header if it is present in the request and the value is at most 1024 visible ASCII characters. Si el x-ms-client-request-id encabezado no está presente en la solicitud, este encabezado no estará presente en la respuesta.If the x-ms-client-request-id header is not present in the request, this header will not be present in the response.

Cuerpo de la respuestaResponse Body

Ninguno.None.

AuthorizationAuthorization

La llamada a esta operación la puede realizar el propietario de la cuenta y cualquiera que disponga de una firma de acceso compartido con permiso para escribir en el blob o en su contenedor.This operation can be called by the account owner and by anyone with a Shared Access Signature that has permission to write to this blob or its container.

ObservacionesRemarks

Si el blob tiene una concesión activa, el cliente debe especificar un identificador de concesión válido en la solicitud para poder escribir metadatos en el blob.If the blob has an active lease, the client must specify a valid lease ID on the request in order to write metadata to the blob. Si el cliente no especifica un identificador de concesión o especifica un identificador de concesión no válido, Blob service devuelve el código de estado 412 (Error de condición previa).If the client does not specify a lease ID, or specifies an invalid lease ID, the Blob service returns status code 412 (Precondition Failed). Si el cliente especifica un identificador de concesión, pero el blob no dispone de una concesión activa, el servicio Blob también devuelve el código de estado 412 (Error de condición previa).If the client specifies a lease ID but the blob does not have an active lease, the Blob service also returns status code 412 (Precondition Failed).

Consulte tambiénSee Also

Autorizar solicitudes para Azure Storage Authorize requests to Azure Storage
Códigos de estado y de error Status and Error Codes
Códigos de error del servicio BLOBBlob Service Error Codes