Put BlobPut Blob

A Put Blob operação cria um novo bloco, página ou BLOB de acréscimo ou atualiza o conteúdo de um blob de blocos existente.The Put Blob operation creates a new block, page, or append blob, or updates the content of an existing block blob.

A atualização de um blob de blocos existente substitui todos os metadados existentes no blob.Updating an existing block blob overwrites any existing metadata on the blob. Não há suporte para atualizações parciais com Put Blob; o conteúdo do blob existente é substituído pelo conteúdo do novo BLOB.Partial updates are not supported with Put Blob; the content of the existing blob is overwritten with the content of the new blob. Para executar uma atualização parcial do conteúdo de um blob de blocos, use a operação colocar lista de blocos .To perform a partial update of the content of a block blob, use the Put Block List operation.

Observe que você pode criar um blob de acréscimo somente na versão 2015-02-21 e posterior.Note that you can create an append blob only in version 2015-02-21 and later.

Uma chamada para um Put Blob para criar um blob de páginas ou um blob de acréscimo Inicializa apenas o blob.A call to a Put Blob to create a page blob or an append blob only initializes the blob. Para adicionar conteúdo a um blob de páginas, chame a operação Put Page .To add content to a page blob, call the Put Page operation. Para adicionar conteúdo a um blob de acréscimo, chame a operação de bloco Append .To add content to an append blob, call the Append Block operation.

SolicitaçãoRequest

A solicitação Put Blob pode ser criada da seguinte maneira.The Put Blob request may be constructed as follows. HTTPS é recomendado.HTTPS is recommended. Substitua myaccount pelo nome da sua conta de armazenamento:Replace myaccount with the name of your storage account:

URI de solicitação do método PUTPUT Method Request URI Versão de HTTPHTTP Version
https://myaccount.blob.core.windows.net/mycontainer/myblob HTTP/1.1HTTP/1.1

URI do serviço de armazenamento emuladoEmulated storage service URI

Ao fazer uma solicitação no serviço de armazenamento emulado, especifique o nome de host do emulador e a porta do serviço Blob como 127.0.0.1:10000, seguido pelo nome da conta de armazenamento 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 solicitação do método PUTPUT Method Request URI Versão de HTTPHTTP Version
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob HTTP/1.1HTTP/1.1

Observe que o emulador de armazenamento dá suporte apenas a tamanhos de blob de até 2 GiB.Note that the storage emulator only supports blob sizes up to 2 GiB.

Para obter mais informações, consulte usando o emulador de armazenamento do Azure para desenvolvimento e teste.For more information, see Using the Azure Storage Emulator for Development and Testing.

Parâmetros de URIURI Parameters

Os seguintes parâmetros adicionais podem ser especificados no URI de solicitação.The following additional parameters may be specified on the request URI.

ParâmetroParameter DescriçãoDescription
timeout Opcional.Optional. OThe

o parâmetro timeout é expresso em segundos.timeout parameter is expressed in seconds. Para obter mais informações, consulte definindo tempos limite para operações do serviço blob.For more information, see Setting Timeouts for Blob Service Operations.

Cabeçalhos de solicitação (todos os tipos de BLOB)Request Headers (All Blob Types)

A tabela a seguir descreve os cabeçalhos de solicitação obrigatórios e opcionais para todos os tipos de BLOB.The following table describes required and optional request headers for all blob types.

Cabeçalho da solicitaçãoRequest header DescriçãoDescription
Authorization Obrigatórios.Required. Especifica o esquema de autorização, o nome da conta e a assinatura.Specifies the authorization scheme, account name, and signature. Para obter mais informações, consulte autorizar solicitações ao armazenamento do Azure.For more information, see Authorize requests to Azure Storage.
Date ou x-ms-dateDate or x-ms-date Obrigatórios.Required. Especifica o UTC (Tempo Universal Coordenado) para a solicitação.Specifies the Coordinated Universal Time (UTC) for the request. Para obter mais informações, consulte autorizar solicitações ao armazenamento do Azure.For more information, see Authorize requests to Azure Storage.
x-ms-version Necessário para todas as solicitações autorizadas.Required for all authorized requests. Especifica a versão da operação a ser usada para esta solicitação.Specifies the version of the operation to use for this request. Para obter mais informações, consulte controle de versão para os serviços de armazenamento do Azure.For more information, see Versioning for the Azure Storage Services.
Content-Length Obrigatórios.Required. O comprimento da solicitação.The length of the request.

Para um blob de páginas ou um blob de acréscimo, o valor desse cabeçalho deve ser definido como zero, pois Put Blob é usado somente para inicializar o blob.For a page blob or an append blob, the value of this header must be set to zero, as Put Blob is used only to initialize the blob. Para gravar o conteúdo em um blob de páginas existente, chame Put Page.To write content to an existing page blob, call Put Page. Para gravar o conteúdo em um blob de acréscimo, chame o bloco de acréscimo.To write content to an append blob, call Append Block.
Content-Type Opcional.Optional. O tipo de conteúdo MIME do blob.The MIME content type of the blob. O tipo padrão é application/octet-stream.The default type is application/octet-stream.
Content-Encoding Opcional.Optional. Especifica quais codificações de conteúdo foram aplicadas ao blob.Specifies which content encodings have been applied to the blob. Esse valor é retornado ao cliente quando a operação obter blob é executada no recurso de BLOB.This value is returned to the client when the Get Blob operation is performed on the blob resource. O cliente pode usar esse valor quando retornado para decodificar o conteúdo do blob.The client can use this value when returned to decode the blob content.
Content-Language Opcional.Optional. Especifica os idiomas naturais usados por esse recurso.Specifies the natural languages used by this resource.
Content-MD5 Opcional.Optional. Um hash MD5 do conteúdo do blob.An MD5 hash of the blob content. O hash é usado para verificar a integridade do blob durante o transporte.This hash is used to verify the integrity of the blob during transport. Quando esse cabeçalho é especificado, o serviço de armazenamento verifica o hash do conteúdo que chegou com o valor enviado.When this header is specified, the storage service checks the hash that has arrived with the one that was sent. Se os dois hashes não corresponderem, a operação falhará com o código de erro 400 (Solicitação Incorreta).If the two hashes do not match, the operation will fail with error code 400 (Bad Request).

Quando omitido na versão 2012-02-12 e posteriores, o serviço Blob gera um hash MD5.When omitted in version 2012-02-12 and later, the Blob service generates an MD5 hash.

Os resultados de Get blob, obter propriedades de blobe blobs de lista incluem o hash MD5.Results from Get Blob, Get Blob Properties, and List Blobs include the MD5 hash.
x-ms-content-crc64 Opcional.Optional. Um hash CRC64 do conteúdo do blob.A CRC64 hash of the blob content. O hash é usado para verificar a integridade do blob durante o transporte.This hash is used to verify the integrity of the blob during transport. Quando esse cabeçalho é especificado, o serviço de armazenamento verifica o hash do conteúdo que chegou com o valor enviado.When this header is specified, the storage service checks the hash that has arrived with the one that was sent. Se os dois hashes não corresponderem, a operação falhará com o código de erro 400 (Solicitação Incorreta).If the two hashes do not match, the operation will fail with error code 400 (Bad Request). Esse cabeçalho tem suporte nas versões 02-02-2019 ou posteriores.This header is supported in versions 02-02-2019 or later.

Se os cabeçalhos Content-MD5 e x-MS-Content-crc64 estiverem presentes, a solicitação falhará com um 400 (solicitação inadequada).If both Content-MD5 and x-ms-content-crc64 headers are present, the request will fail with a 400 (Bad Request).
Cache-Control Opcional.Optional. O serviço Blob armazena esse valor, mas não o utiliza, nem modifica.The Blob service stores this value but does not use or modify it.
x-ms-blob-content-type Opcional.Optional. Defina o tipo de conteúdo do blob.Set the blob’s content type.
x-ms-blob-content-encoding Opcional.Optional. Defina a codificação do conteúdo do blob.Set the blob’s content encoding.
x-ms-blob-content-language Opcional.Optional. Defina o idioma do conteúdo do blob.Set the blob's content language.
x-ms-blob-content-md5 Opcional.Optional. Defina o hash MD5 do blob.Set the blob’s MD5 hash.
x-ms-blob-cache-control Opcional.Optional. Define o controle de cache do blob.Sets the blob's cache control.
x-ms-blob-type: <BlockBlob | PageBlob | AppendBlob> Obrigatórios.Required. Especifica o tipo de blob a ser criado: BLOB de blocos, BLOB de páginas ou BLOB de acréscimo.Specifies the type of blob to create: block blob, page blob, or append blob. O suporte para a criação de um blob de acréscimo está disponível apenas na versão 2015-02-21 e posterior.Support for creating an append blob is available only in version 2015-02-21 and later.
x-ms-meta-name:value Opcional.Optional. Pares de nome-valor associados ao blob como metadados.Name-value pairs associated with the blob as metadata.

Observe que, a partir da versão 2009-09-19, os nomes de metadados devem aderir às regras de nomenclatura para identificadores 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 o escopo de criptografia a ser usado para criptografar o conteúdo da solicitação.Indicates the encryption scope to use to encrypt the request contents. Esse cabeçalho tem suporte nas versões 2019-02-02 ou posteriores.This header is supported in versions 2019-02-02 or later.
x-ms-tags Opcional.Optional. Define as marcas codificadas da cadeia de caracteres de consulta no BLOB.Sets the given query-string encoded tags on the blob. Consulte os comentários para obter informações adicionais.See the Remarks for additional information. Com suporte na versão 2019-12-12 e mais recente.Supported in version 2019-12-12 and newer.
x-ms-lease-id:<ID> Obrigatório se o blob tiver uma concessão ativa.Required if the blob has an active lease. Para executar essa operação em um blob com uma concessão ativa, especifique a ID de concessão válida para esse cabeçalho.To perform this operation on a blob with an active lease, specify the valid lease ID for this header.
x-ms-blob-content-disposition Opcional.Optional. Define o cabeçalho Content-Disposition do blob.Sets the blob’s Content-Disposition header. Disponível para versões 2013-08-15 e posteriores.Available for versions 2013-08-15 and later.

O campo do cabeçalho de resposta Content-Disposition transmite informações adicionais sobre como processar a carga de resposta, e também pode ser usado para anexar metadados adicionais.The Content-Disposition response header field conveys additional information about how to process the response payload, and also can be used to attach additional metadata. Por exemplo, se for definido como attachment, ele indicará que o usuário agente não deve exibir a resposta, mas em vez disso, mostra uma caixa de diálogo Salvar como com um nome de arquivo diferente do nome de blob especificado.For example, if set to attachment, it indicates that the user-agent should not display the response, but instead show a Save As dialog with a filename other than the blob name specified.

A resposta das operações obter blob e obter propriedades de blob inclui o content-disposition cabeçalho.The response from the Get Blob and Get Blob Properties operations includes the content-disposition header.
Origin Opcional.Optional. Especifica a origem da qual a solicitação será emitida.Specifies the origin from which the request is issued. A presença desse cabeçalho resulta em recursos de origens cruzadas compartilhando cabeçalhos na resposta.The presence of this header results in cross-origin resource sharing headers on the response. Consulte suporte a CORS para os serviços de armazenamento para obter detalhes.See CORS Support for the Storage Services for details.
x-ms-client-request-id Opcional.Optional. Fornece um valor opaco gerado pelo cliente com um limite de caracteres de 1 KiB que é registrado nos logs de análise quando o log da análise de armazenamento 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. O uso desse cabeçalho é altamente recomendável para correlacionar as atividades do lado do cliente com as solicitações recebidas pelo servidor.Using this header is highly recommended for correlating client-side activities with requests received by the server. Para obter mais informações, consulte sobre log de análise de armazenamento e log do Azure: usando logs para rastrear solicitações de armazenamento.For more information, see About Storage Analytics Logging and Azure Logging: Using Logs to Track Storage Requests.
x-ms-access-tier Opcional.Optional. Indica a camada a ser definida no BLOB.Indicates the tier to be set on blob. Para BLOBs de páginas em uma conta de armazenamento Premium somente com a versão 2017-04-17 e mais recente.For page blobs on a premium storage account only with version 2017-04-17 and newer. Verifique o armazenamento Premium de alto desempenho e os discos gerenciados para VMs para obter uma lista completa de camadas com suporte do blob de páginas.Check High-performance Premium Storage and managed disks for VMs for a full list of page blob supported tiers. Para BLOBs de blocos, com suporte no armazenamento de BLOBs ou contas de uso geral v2 somente com a versão 2018-11-09 e mais recente.For block blobs, supported on blob storage or general purpose v2 accounts only with version 2018-11-09 and newer. Os valores válidos para as camadas de blob de bloco são Hot / Cool / Archive .Valid values for block blob tiers are Hot/Cool/Archive. Para obter informações detalhadas sobre camadas de blob de blocos, consulte camadas de armazenamento quentes, frias e de arquivo morto.For detailed information about block blob tiering see Hot, cool and archive storage tiers.

Essa operação também dará suporte ao uso de cabeçalhos condicionais para gravar o blob somente se uma determinada condição for atendida.This operation also supports the use of conditional headers to write the blob only if a specified condition is met. Para obter mais informações, confira Como especificar cabeçalhos condicionais para operações de serviço Blob.For more information, see Specifying Conditional Headers for Blob Service Operations.

Cabeçalhos de solicitação (somente blobs de página)Request Headers (Page Blobs Only)

A tabela a seguir descreve os cabeçalhos de solicitação aplicáveis apenas para operações em blobs de página.The following table describes request headers applicable only for operations on page blobs.

Cabeçalho da solicitaçãoRequest header DescriçãoDescription
x-ms-blob-content-length: bytes Necessário para blobs de páginas.Required for page blobs. Esse cabeçalho especifica o tamanho máximo para o blob de páginas, até 8 TiB.This header specifies the maximum size for the page blob, up to 8 TiB. O tamanho do blob de páginas deve ser alinhado a um limite de 512 bytes.The page blob size must be aligned to a 512-byte boundary.

Se esse cabeçalho for especificado para um blob de blocos ou um blob de acréscimo, o serviço blob retornará o código de status 400 (solicitação inadequada).If this header is specified for a block blob or an append blob, the Blob service returns status code 400 (Bad Request).
x-ms-blob-sequence-number: <num> Opcional.Optional. Defina para blobs de página apenas.Set for page blobs only. O número de sequência é um valor controlado pelo usuário que você pode usar para rastrear solicitações.The sequence number is a user-controlled value that you can use to track requests. O valor do número de sequência deve ficar entre 0 e 2^63 - 1. O valor padrão é 0.The value of the sequence number must be between 0 and 2^63 - 1.The default value is 0.
x-ms-access-tier Versão 2017-04-17 e mais recente.Version 2017-04-17 and newer. Somente para BLOBs de páginas em uma conta de armazenamento Premium.For page blobs on a premium storage account only. Especifica a camada a ser definida no BLOB.Specifies the tier to be set on the blob. Verifique o armazenamento Premium de alto desempenho e os discos gerenciados para VMs para obter uma lista completa de camadas com suporte.Check High-performance Premium Storage and managed disks for VMs for a full list of supported tiers.
x-ms-client-request-id Esse cabeçalho pode ser usado para solucionar problemas de solicitações e respostas correspondentes.This header can be used to troubleshoot requests and corresponding responses. O valor desse cabeçalho é igual ao valor do x-ms-client-request-id cabeçalho se estiver presente na solicitação e o valor for de no máximo 1024 caracteres ASCII visíveis.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. Se o x-ms-client-request-id cabeçalho não estiver presente na solicitação, esse cabeçalho não estará presente na resposta.If the x-ms-client-request-id header is not present in the request, this header will not be present in the response.

Cabeçalhos de solicitação (chaves de criptografia fornecidas pelo cliente)Request Headers (Customer-provided encryption keys)

A partir da versão 2019-02-02, os seguintes cabeçalhos podem ser especificados na solicitação para criptografar um blob com uma chave fornecida pelo 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. A criptografia com uma chave fornecida pelo cliente (e o conjunto de cabeçalhos correspondente) é opcional.Encryption with a customer-provided key (and the corresponding set of headers) is optional.

Cabeçalho da solicitaçãoRequest header DescriçãoDescription
x-ms-encryption-key Obrigatórios.Required. A chave de criptografia AES-256 codificada em base64.The Base64-encoded AES-256 encryption key.
x-ms-encryption-key-sha256 Obrigatórios.Required. O hash SHA256 codificado em base64 da chave de criptografia.The Base64-encoded SHA256 hash of the encryption key.
x-ms-encryption-algorithm: AES256 Obrigatórios.Required. Especifica o algoritmo a ser usado para criptografia.Specifies the algorithm to use for encryption. O valor desse cabeçalho deve ser AES256 .The value of this header must be AES256.

Corpo da solicitaçãoRequest Body

Para um blob de blocos, o corpo da solicitação tem o conteúdo do blob.For a block blob, the request body contains the content of the blob.

Para um blob de páginas ou um blob de acréscimo, o corpo da solicitação está vazio.For a page blob or an append blob, the request body is empty.

Solicitação de ExemploSample Request

O exemplo a seguir mostra uma solicitação para criar um blob de blocos:The following example shows a request to create a block blob:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblockblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-content-disposition: attachment; filename="fname.ext"  
x-ms-blob-type: BlockBlob  
x-ms-meta-m1: v1  
x-ms-meta-m2: v2  
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Content-Length: 11  
  
Request Body:  
hello world  
  

Essa solicitação de exemplo cria um blob de páginas e especifica seu tamanho máximo como 1024 bytes.This sample request creates a page blob and specifies its maximum size as 1024 bytes. Observe que você deve chamar Put Page para adicionar conteúdo a um blob de páginas:Note that you must call Put Page to add content to a page blob:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/mypageblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-type: PageBlob  
x-ms-blob-content-length: 1024  
x-ms-blob-sequence-number: 0  
Authorization: SharedKey   
Origin: http://contoso.com  
Vary: Origin  
myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Content-Length: 0  

Essa solicitação de exemplo cria um blob de acréscimo.This sample request creates an append blob. Observe que você deve chamar o bloco Append para adicionar conteúdo ao blob de acréscimo:Note that you must call Append Block to add content to the append blob:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myappendblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-type: AppendBlob  
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Origin: http://contoso.com  
Vary: Origin  
Content-Length: 0  
  

RespostaResponse

A resposta inclui um código de status HTTP e um conjunto de cabeçalhos de resposta.The response includes an HTTP status code and a set of response headers.

Código de statusStatus Code

Uma operação bem-sucedida retorna o código de status 201 (Criado).A successful operation returns status code 201 (Created).

Para obter informações sobre códigos de status, consulte status e códigos de erro.For information about status codes, see Status and Error Codes.

Cabeçalhos de respostaResponse Headers

A resposta para esta operação inclui os cabeçalhos a seguir.The response for this operation includes the following headers. A resposta também pode incluir cabeçalhos HTTP padrão adicionais.The response can also include additional standard HTTP headers. Todos os cabeçalhos padrão estão em conformidade com a especificação do protocolo HTTP/1.1.All standard headers conform to the HTTP/1.1 protocol specification.

Cabeçalho de respostaResponse header DescriçãoDescription
ETag A ETag contém um valor que o cliente pode usar para executar operações PUT condicionais usando o cabeçalho de solicitação If-Match.The ETag contains a value that the client can use to perform conditional PUT operations by using the If-Match request header. Se a versão da solicitação for a 2011-08-18 ou mais recente, o valor de ETag será exibido entre aspas.If the request version is 2011-08-18 or newer, the ETag value will be in quotes.
Last-Modified A data e a hora da última modificação feita no blob.The date/time that the blob was last modified. O formato da data segue RFC 1123.The date format follows RFC 1123. Para obter mais informações, consulte representação de valores de data e hora em cabeçalhos.For more information, see Representation of Date-Time Values in Headers.

Qualquer operação de gravação no blob (incluindo atualizações nos metadados ou nas propriedades do blob), altera a hora da última modificação do blob.Any write operation on the blob (including updates on the blob's metadata or properties) changes the last modified time of the blob.
Content-MD5 Esse cabeçalho é retornado para um blob de blocos, para que o cliente possa verificar a integridade do conteúdo da mensagem.This header is returned for a block blob so the client can check the integrity of message content. O valor Content-MD5 retornado é computado pelo serviço Blob.The Content-MD5 value returned is computed by the Blob service. Na versão 2012-02-12 e mais recentes, esse cabeçalho é retornado até mesmo quando a solicitação não inclui os cabeçalhos Content-MD5 ou x-ms-blob-content-md5.In version 2012-02-12 and later, this header is returned even when the request does not include Content-MD5 or x-ms-blob-content-md5 headers.
x-ms-content-crc64 Esse cabeçalho é retornado para um blob de blocos, para que o cliente possa verificar a integridade do conteúdo da mensagem.This header is returned for a block blob so the client can check the integrity of message content. O valor x-ms-content-crc64 retornado é computado pelo serviço Blob.The x-ms-content-crc64 value returned is computed by the Blob service. Esse cabeçalho sempre será retornado a partir da versão 2019-02-02.This header will always be returned starting from version 2019-02-02.
x-ms-request-id Esse cabeçalho identifica a solicitação que foi feita de forma exclusiva e pode ser usado para solucionar problemas na solicitação.This header uniquely identifies the request that was made and can be used for troubleshooting the request. Para obter mais informações, consulte Solucionando problemas de operações de API.For more information, see Troubleshooting API Operations.
x-ms-version Indica a versão do serviço Blob usado para executar a solicitação.Indicates the version of the Blob service used to execute the request. Esse cabeçalho é retornado para solicitações feitas na versão 2009-09-19 e mais recente.This header is returned for requests made against version 2009-09-19 and later.
Date Um valor de data/hora UTC gerado pelo serviço que indica a hora em que a resposta foi iniciada.A UTC date/time value generated by the service that indicates the time at which the response was initiated.
Access-Control-Allow-Origin Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência.Returned if the request includes an Origin header and CORS is enabled with a matching rule. Este cabeçalho retorna o valor do cabeçalho de solicitação de origem no caso de uma correspondência.This header returns the value of the origin request header in case of a match.
Access-Control-Expose-Headers Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência.Returned if the request includes an Origin header and CORS is enabled with a matching rule. Retorna a lista de cabeçalhos de resposta que devem ser expostos ao cliente ou ao emissor da solicitação.Returns the list of response headers that are to be exposed to the client or issuer of the request.
Access-Control-Allow-Credentials Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência. que não permite todas as origens.Returned if the request includes an Origin header and CORS is enabled with a matching rule that does not allow all origins. Esse cabeçalho será definido como verdadeiro.This header will be set to true.
x-ms-request-server-encrypted: true/false Versão 2015-12-11 ou mais recente.Version 2015-12-11 or newer. O valor desse cabeçalho será definido como true se o conteúdo da solicitação for criptografado com êxito usando o algoritmo especificado e, false caso contrário,.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 Versão 2019-02-02 ou mais recente.Version 2019-02-02 or newer. Esse cabeçalho é retornado se a solicitação usou uma chave fornecida pelo cliente para criptografia, para que o cliente possa garantir que o conteúdo da solicitação seja criptografado com êxito usando a chave fornecida.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 Versão 2019-02-02 ou mais recente.Version 2019-02-02 or newer. Esse cabeçalho é retornado se a solicitação usou um escopo de criptografia, para que o cliente possa garantir que o conteúdo da solicitação seja criptografado com êxito usando o escopo de criptografia.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-version-id: <DateTime> Versão 2019-12-12 e mais recente.Version 2019-12-12 and newer. Esse cabeçalho retorna um DateTime valor opaco que identifica exclusivamente o blob.This header returns an opaque DateTime value that uniquely identifies the blob. O valor desse cabeçalho indica a versão do blob e pode ser usado em solicitações subsequentes para acessar o blob.The value of this header indicates the Version of the blob, and may be used in subsequent requests to access the blob.

Corpo da respostaResponse Body

Nenhum.None.

Exemplo de RespostaSample Response

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Transfer-Encoding: chunked  
Content-MD5: sQqNsWTgdUEFt6mb5y4/5Q==  
x-ms-content-crc64: 77uWZTolTHU
Date: <date>  
ETag: "0x8CB171BA9E94B0B"  
Last-Modified: <date>  
Access-Control-Allow-Origin: http://contoso.com  
Access-Control-Expose-Headers: Content-MD5  
Access-Control-Allow-Credentials: True  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
x-ms-version-id: <DateTime>  

AutorizaçãoAuthorization

Essa operação poderá ser chamada pelo proprietário da conta e por qualquer cliente com uma assinatura de acesso compartilhado que tenha permissão para gravar nesse blob ou em seu contêiner.This operation can be called by the account owner and by any client with a shared access signature that has permission to write to this blob or its container.

Se uma solicitação especificar marcas com o x-ms-tags cabeçalho da solicitação, o chamador deverá atender aos requisitos de autorização da operação definir marcas de blob .If a request specifies tags with the x-ms-tags request header, the caller must meet the authorization requirements of the Set Blob Tags operation.

ComentáriosRemarks

Ao criar um blob, você deve especificar se ele é um blob de blocos, BLOB de acréscimo ou BLOB de páginas especificando o valor do x-ms-blob-type cabeçalho.When you create a blob, you must specify whether it is a block blob, append blob, or page blob by specifying the value of the x-ms-blob-type header. Após a criação de um blob, o tipo de blob não pode ser alterado, a menos que seja excluído e recriado.Once a blob has been created, the type of the blob cannot be changed unless it is deleted and re-created.

O tamanho máximo de um blob de blocos criado via Put Blob é 256 MIB para a versão 2016-05-31 e posterior e 64 MIB para versões mais antigas.The maximum size for a block blob created via Put Blob is 256 MiB for version 2016-05-31 and later, and 64 MiB for older versions. Se o blob for maior do que 256 MiB para a versão 2016-05-31 e posterior, ou 64 MiB para versões mais antigas, você deverá carregá-lo como um conjunto de blocos.If your blob is larger than 256 MiB for version 2016-05-31 and later, or 64 MiB for older versions, you must upload it as a set of blocks. Para obter mais informações, consulte o Put Block e o Put Block Listoperations .For more information, see the Put Block and Put Block Listoperations. Não é necessário também chamar Put Blob se você carregar o blob como um conjunto de blocos.It's not necessary to also call Put Blob if you upload the blob as a set of blocks.

Se você tentar carregar um blob de blocos que seja maior do que 256 MiB para a versão 2016-05-31 e posterior, e o 64 MiB para versões mais antigas ou um blob de páginas maior que 8 TiB, o serviço retornará o código de status 413 (entidade de solicitação muito grande).If you attempt to upload a block blob that is larger than 256 MiB for version 2016-05-31 and later, and 64 MiB for older versions, or a page blob larger than 8 TiB, the service returns status code 413 (Request Entity Too Large). O serviço Blob também retorna informações adicionais sobre o erro na resposta, inclusive o tamanho máximo permitido do blob em bytes.The Blob service also returns additional information about the error in the response, including the maximum blob size permitted in bytes.

Para criar um novo BLOB de páginas, primeiro inicialize o blob chamando Put Blob e especifique seu tamanho máximo, até 8 Tib.To create a new page blob, first initialize the blob by calling Put Blob and specify its maximum size, up to 8 TiB. Ao criar um blob de páginas, não inclua o conteúdo no corpo da solicitação.When creating a page blob, do not include content in the request body. Depois que o blob tiver sido criado, chame Put Page para adicionar conteúdo ao BLOB ou para modificá-lo.Once the blob has been created, call Put Page to add content to the blob or to modify it.

Para criar um novo BLOB de acréscimo, chame Put Blob para criar um blob com um comprimento de conteúdo de zero bytes.To create a new append blob, call Put Blob to create a blob with a content-length of zero bytes. Depois que o blob de acréscimo for criado, chame bloco Append para adicionar conteúdo ao final do blob.Once the append blob is created, call Append Block to add content to the end of the blob.

Se você chamar Put Blob para substituir um blob existente com o mesmo nome, todos os instantâneos associados ao blob original serão retidos.If you call Put Blob to overwrite an existing blob with the same name, any snapshots associated with the original blob are retained. Para remover instantâneos associados, chame delete blob primeiro e, em seguida, Put Blob recrie o blob.To remove associated snapshots, call Delete Blob first, then Put Blob to re-create the blob.

Um blob tem as propriedades personalizadas (definidas pelos cabeçalhos) que você pode usar para armazenar os valores associados aos cabeçalhos HTTP padrão.A blob has custom properties (set via headers) that you can use to store values associated with standard HTTP headers. Esses valores podem ser lidos subsequentemente chamando obter propriedades de blobou modificados chamando Propriedades de blob de conjunto.These values can subsequently be read by calling Get Blob Properties, or modified by calling Set Blob Properties. Os cabeçalhos de propriedade personalizada e o cabeçalho HTTP padrão correspondente são listados na seguinte tabela:The custom property headers and corresponding standard HTTP header are listed in the following table:

Cabeçalho HTTPHTTP header Cabeçalho da propriedade personalizada do blobCustom blob property header
Content-Type x-ms-blob-content-type
Content-Encoding x-ms-blob-content-encoding
Content-Language x-ms-blob-content-language
Content-MD5 x-ms-blob-content-md5
Cache-Control x-ms-blob-cache-control

A semântica para definir esses valores de propriedade como persistentes com o blob é a seguinte:The semantics for setting persisting these property values with the blob as follows:

  • Se o cliente especificar um cabeçalho de propriedade personalizada, conforme indicado pelo prefixo x-ms-blob, esse valor será armazenado com o blob.If the client specifies a custom property header, as indicated by the x-ms-blob prefix, this value is stored with the blob.

  • Se o cliente especificar um cabeçalho HTTP padrão, mas não o cabeçalho da propriedade personalizada, o valor será armazenado na propriedade personalizada correspondente associada ao blob, e retornado por uma chamada a Get Blob Properties.If the client specifies a standard HTTP header, but not the custom property header, the value is stored in the corresponding custom property associated with the blob, and is returned by a call to Get Blob Properties. Por exemplo, se o cliente definir o cabeçalho Content-Type na solicitação, esse valor será armazenado na propriedade x-ms-blob-content-type do blob.For example, if the client sets the Content-Type header on the request, that value is stored in the blob's x-ms-blob-content-type property.

  • Se o cliente definir o cabeçalho HTTP padrão e o cabeçalho da propriedade correspondente na mesma solicitação, a solicitação PUT usará o valor fornecido para o cabeçalho HTTP padrão, mas o valor especificado para o cabeçalho da propriedade personalizada será mantido com o blob e retornado por solicitações GET subsequentes.If the client sets both the standard HTTP header and the corresponding property header on the same request, the PUT request uses the value provided for the standard HTTP header, but the value specified for the custom property header is persisted with the blob and returned by subsequent GET requests.

Se as marcas forem fornecidas no x-ms-tags cabeçalho, elas deverão ser codificadas para cadeia de caracteres de consulta.If tags are provided in the x-ms-tags header, they must be query-string encoded. As chaves e os valores de marca devem estar de acordo com os requisitos de nomenclatura e comprimento conforme especificado em definir marcas de BLOB.Tag keys and values must conform to the naming and length requirements as specified in Set Blob Tags. Além disso, o x-ms-tags cabeçalho pode conter até 2 KB de marcas.Further, the x-ms-tags header may contain up to 2kb of tags. Se mais marcas forem necessárias, use a operação definir marcas de blob .If more tags are required, use the Set Blob Tags operation.

Se o blob tiver uma concessão ativa, o cliente deverá especificar uma ID de concessão válida na solicitação para substituir o blob.If the blob has an active lease, the client must specify a valid lease ID on the request in order to overwrite the blob. Se o cliente não especificar uma ID de concessão ou especificar uma ID inválida, o serviço Blob retornará o código de status 412 (Falha na Pré-condição).If the client does not specify a lease ID, or specifies an invalid lease ID, the Blob service returns status code 412 (Precondition Failed). Se o cliente especificar uma ID de concessão, mas o blob não tiver uma concessão ativa, o serviço Blob também retornará o código de status 412 (Falha na Pré-condição).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). Se o cliente especificar um ID de concessão em um blob que ainda não existir, o serviço Blob retornará o código de status 412 (falha na pré-condição) para solicitações feitas na versão 2013-08-15 e posterior; para versões anteriores, o serviço Blob retornará o código de status 201 (criado).If the client specifies a lease ID on a blob that does not yet exist, the Blob service will return status code 412 (Precondition Failed) for requests made against version 2013-08-15 and later; for prior versions the Blob service will return status code 201 (Created).

Se um blob existente com uma concessão ativa for substituído por uma operação Put Blob, a concessão persistirá no blob atualizado, até ele expirar ou ser liberado.If an existing blob with an active lease is overwritten by a Put Blob operation, the lease persists on the updated blob, until it expires or is released.

Uma Put Blob operação tem permissão de 10 minutos por MIB para ser concluída.A Put Blob operation is permitted 10 minutes per MiB to complete. Se a operação estiver demorando mais de 10 minutos por MiB em média, a operação atingirá o tempo limite.If the operation is taking longer than 10 minutes per MiB on average, the operation will timeout.

Substituir um blob arquivado falhará e substituirá um hot / cool blob herdará a camada do blob antigo se o cabeçalho x-MS-Access-Tier não for fornecido.Overwriting an archived blob will fail and overwriting a hot/cool blob will inherit the tier from the old blob if x-ms-access-tier header is not provided.

Consulte TambémSee Also

Autorizar solicitações ao armazenamento do Azure Authorize requests to Azure Storage
Status e códigos de erro Status and Error Codes
Códigos de erro do serviço blob Blob Service Error Codes
Configurando os tempos limite para operações de serviço do BlobSetting Timeouts for Blob Service Operations