Colocar blob da URL
A operação Put Blob From URL
cria um novo blob de blocos em que o conteúdo do blob é lido de uma URL especificada. Essa API está disponível a partir da versão 2020-04-08.
Não há suporte para atualizações parciais com Put Blob From URL
. O conteúdo de um blob existente é substituído com o conteúdo do novo blob. Para executar atualizações parciais no conteúdo de um blob de blocos usando uma URL de origem, use a API Put Block From URL
em conjunto com Put Block List
.
O tamanho do blob de origem pode ter até um comprimento máximo de 5.000 mebibytes (MiB).
Pedir
Você pode construir o Put Blob From URL
da seguinte maneira. Recomendamos que você use HTTPS. Substitua myaccount pelo nome da sua conta de armazenamento:
URI da solicitação do método PUT | Versão HTTP |
---|---|
https://myaccount.blob.core.windows.net/mycontainer/myblob |
HTTP/1.1 |
Solicitação de serviço de armazenamento emulado
Ao fazer uma solicitação no serviço de armazenamento emulado, especifique o nome do host do emulador e a porta do serviço Blob como 127.0.0.1:10000
, seguido pelo nome da conta de armazenamento emulada:
URI da solicitação do método PUT | Versão HTTP |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob |
HTTP/1.1 |
O emulador de armazenamento dá suporte apenas a tamanhos de blob de até 2 gibibytes (GiB).
Para obter mais informações, consulte Usar o emulador do Azurite paralocais de desenvolvimento do Armazenamento do Azure.
Parâmetros de URI
Os seguintes parâmetros adicionais podem ser especificados no URI da solicitação:
Parâmetro | Descrição |
---|---|
timeout |
Opcional. O parâmetro timeout é expresso em segundos. Para obter mais informações, consulte Definir tempos limite para operações de serviço blob. |
Cabeçalhos de solicitação
Os cabeçalhos de solicitação obrigatórios e opcionais são descritos na tabela a seguir:
Cabeçalho de solicitação | Descrição |
---|---|
Authorization |
Necessário. Especifica o esquema de autorização, o nome da conta e a assinatura. Para obter mais informações, consulte Autorizar solicitações para o Armazenamento do Azure. |
Date ou x-ms-date |
Necessário. Especifica o UTC (Tempo Universal Coordenado) para a solicitação. Para obter mais informações, consulte Autorizar solicitações para o Armazenamento do Azure. |
x-ms-version |
Necessário para todas as solicitações autorizadas. Especifica a versão da operação a ser usada para essa solicitação. Para obter mais informações, consulte Controle de versão para os serviços de Armazenamento do Azure. |
Content-Length |
Necessário. Especifica o número de bytes que estão sendo transmitidos no corpo da solicitação. O valor desse cabeçalho deve ser definido como 0. Quando o comprimento não é 0, a operação falha com o código de status 400 (Solicitação Incorreta). |
x-ms-copy-source:name |
Necessário. Especifica a URL do blob de origem. O valor pode ser uma URL de até 2 kibibytes (KiB) de comprimento que especifica um blob. O valor deve ser codificado em URL como seria exibido em um URI de solicitação. O blob de origem deve ser público ou ser autorizado por meio de uma assinatura de acesso compartilhado. Se o blob de origem for público, nenhuma autorização será necessária para executar a operação. Se o tamanho do blob de origem for maior que 5.000 MiB ou se a origem não retornar um valor de Content-Length válido, a solicitação falhará com o código de status 409 (Conflito). Aqui estão alguns exemplos de URLs de objeto de origem:- https://myaccount.blob.core.windows.net/mycontainer/myblob - https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime> - https://myaccount.blob.core.windows.net/mycontainer/myblob?versionid=<DateTime> |
x-ms-copy-source-authorization: <scheme> <signature> |
Opcional. Especifica o esquema de autorização e a assinatura da origem da cópia. Para obter mais informações, consulte Autorizar solicitações para o Armazenamento do Azure. Observação: há suporte apenas para um esquema de portador para o Microsoft Entra. Observação: se o objeto de origem estiver acessível publicamente ou o objeto de origem estiver em uma conta de armazenamento e você estiver usando um token SAS que está sendo passado em x-ms-copy-source:name , esse cabeçalho não será necessário.Esse cabeçalho tem suporte nas versões 2020-10-02 e posteriores. |
x-ms-blob-type: BlockBlob |
Necessário. Especifica o tipo de blob a ser criado, que deve ser BlockBlob . Se o tipo de blob não for BlockBlob , a operação falhará com o código de status 400 (Solicitação Incorreta). |
Content-Type |
Opcional. O tipo de conteúdo MIME do blob. O tipo padrão é application/octet-stream . |
Content-Encoding |
Opcional. Especifica quais codificações de conteúdo foram aplicadas ao blob. Esse valor é retornado ao cliente quando a operação Obter Blob é executada no recurso de blob. Quando esse valor é retornado, o cliente pode usá-lo para decodificar o conteúdo do blob. |
Content-Language |
Opcional. Especifica os idiomas naturais usados por esse recurso. |
Cache-Control |
Opcional. O Armazenamento de Blobs armazena esse valor, mas não o usa nem modifica. |
x-ms-source-content-md5 |
Opcional. Um hash MD5 do conteúdo do blob do URI. Esse hash é usado para verificar a integridade do blob durante o transporte dos dados do URI. Quando esse cabeçalho é especificado, o serviço de armazenamento compara o hash do conteúdo que chegou da fonte de cópia com esse valor de cabeçalho. Se esse cabeçalho for omitido, o Armazenamento de Blobs gerará um hash MD5. Se os dois hashes não corresponderem, a operação falhará com o código de erro 400 (Solicitação Incorreta). |
x-ms-content-crc64 |
Opcional. Um hash CRC64 do conteúdo do blob. Esse hash é usado para verificar a integridade do blob durante o transporte. Quando esse cabeçalho é especificado, o serviço de armazenamento verifica o hash que chegou em relação ao que foi enviado. Se os dois hashes não corresponderem, a operação falhará com o código de erro 400 (Solicitação Incorreta). Esse cabeçalho tem suporte na versão 02-02-2019 e posterior. Se os cabeçalhos Content-MD5 e x-ms-content-crc64 estiverem presentes, a solicitação falhará com um 400 (Solicitação Incorreta). |
x-ms-blob-content-type |
Opcional. Define o tipo de conteúdo do blob. |
x-ms-blob-content-encoding |
Opcional. Define a codificação de conteúdo do blob. |
x-ms-blob-content-language |
Opcional. Define o idioma de conteúdo do blob. |
x-ms-blob-content-md5 |
Opcional. Define o hash MD5 do blob. |
x-ms-blob-cache-control |
Opcional. Define o controle de cache do blob. |
x-ms-meta-name:value |
Opcional. Os pares nome-valor associados ao blob como metadados. Observação: a partir da versão 2009-09-19, os nomes de metadados devem seguir as regras de nomenclatura para identificadores C#. |
x-ms-encryption-scope |
Opcional. O escopo de criptografia a ser usado para criptografar o conteúdo da solicitação. Esse cabeçalho tem suporte na versão 2019-02-02 e posterior. |
x-ms-tags |
Opcional. Define as marcas codificadas em cadeia de caracteres de consulta especificadas no blob. Para obter mais informações, vá para a seção comentários do |
x-ms-copy-source-tag-option |
Opcional. Os valores possíveis são REPLACE ou COPY (diferencia maiúsculas de minúsculas). O valor padrão é REPLACE. Se COPY for especificado, as marcas do blob de origem serão copiadas para o blob de destino. O blob de origem deve ser privado e a solicitação deve ter permissão para Obter Marcas de Blob no blob de origem e Definir Marcas de Blob no blob de destino. Isso incorre em uma chamada extra para a operação Obter Marcas de Blob REPLACE define as marcas especificadas pelo cabeçalho x-ms-tags no blob de destino. Se REPLACE for usado e nenhuma marca for especificada por x-ms-tags , nenhuma marca será definida no blob de destino. Especificar COPY e x-ms-tags resulta em um 409 (Conflito).Com suporte na versão 2021-04-10 e posterior. |
x-ms-copy-source-blob-properties |
Opcional. Especifica o comportamento das propriedades do blob de origem de cópia. Se definido como True , as propriedades do blob de origem serão copiadas para o novo blob. O valor padrão é True . |
x-ms-source-if-modified-since |
Opcional. Um valor DateTime . Especifique esse cabeçalho condicional para colocar o blob somente se o blob de origem tiver sido modificado desde a data/hora especificada. Se o blob de origem não tiver sido modificado, o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). Esse cabeçalho não poderá ser especificado se a origem for um compartilhamento de Arquivos do Azure. |
x-ms-source-if-unmodified-since |
Opcional. Um valor DateTime . Especifique esse cabeçalho condicional para colocar o blob somente se o blob de origem não tiver sido modificado desde a data/hora especificada. Se o blob de origem tiver sido modificado, o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). Esse cabeçalho não poderá ser especificado se a origem for um compartilhamento de Arquivos do Azure. |
x-ms-source-if-match |
Opcional. Um valor ETag. Especifique esse cabeçalho condicional para colocar o blob de origem somente se sua ETag corresponder ao valor especificado. Se os valores de ETag não corresponderem, o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). Esse cabeçalho não poderá ser especificado se a origem for um compartilhamento de Arquivos do Azure. |
x-ms-source-if-none-match |
Opcional. Um valor ETag. Especifique esse cabeçalho condicional para colocar o blob somente se sua ETag não corresponder ao valor especificado. Se os valores forem idênticos, o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). Esse cabeçalho não poderá ser especificado se a origem for um compartilhamento de Arquivos do Azure. |
If-Modified-Since |
Opcional. Um valor DateTime . Especifique esse cabeçalho condicional para colocar o blob somente se o blob de destino tiver sido modificado desde a data/hora especificada. Se o blob de destino não tiver sido modificado, o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). |
If-Unmodified-Since |
Opcional. Um valor DateTime . Especifique esse cabeçalho condicional para colocar o blob somente se o blob de destino não tiver sido modificado desde a data/hora especificada. Se o blob de destino tiver sido modificado, o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). |
If-Match |
Opcional. Um valor ETag. Especifique um valor ETag para esse cabeçalho condicional para colocar o blob somente se o valor ETag especificado corresponder ao valor ETag para um blob de destino existente. Se a ETag do blob de destino não corresponder à ETag especificada para If-Match , o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). |
If-None-Match |
Opcional. Um valor ETag ou o caractere curinga (*). Especifique um valor ETag para esse cabeçalho condicional para colocar o blob somente se o valor ETag especificado não corresponder ao valor de ETag para o blob de destino. Especifique o caractere curinga (*) para executar a operação somente se o blob de destino não existir. Se a condição especificada não for atendida, o Armazenamento de Blobs retornará o código de status 412 (Falha na pré-condição). |
x-ms-lease-id:<ID> |
Necessário se o blob tiver uma concessão ativa. 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. |
x-ms-blob-content-disposition |
Opcional. Define o cabeçalho Content-Disposition do blob. Disponível para a versão 2013-08-15 e posterior.O campo de cabeçalho de resposta Content-Disposition transmite informações adicionais sobre como processar o conteúdo da resposta e pode ser usado para anexar metadados adicionais. Por exemplo, se o cabeçalho estiver definido como attachment , ele indicará que o usuário-agente não deve exibir a resposta. Em vez disso, ele deve exibir uma caixa de diálogo Salvar como com um nome de arquivo diferente do nome do blob especificado.A resposta das operações Obter Blob |
Origin |
Opcional. Especifica a origem da qual a solicitação é emitida. A presença desse cabeçalho resulta em cabeçalhos CORS (compartilhamento de recursos entre origens) na resposta. Para obter mais informações, consulte suporte a CORS para os serviços de Armazenamento do Azure. |
x-ms-client-request-id |
Opcional. Fornece um valor opaco gerado pelo cliente com um limite de caracteres KiB (1 kibibyte) que é registrado nos logs de análise quando o log de análise de armazenamento está habilitado. É altamente recomendável que você use esse cabeçalho para correlacionar atividades do lado do cliente com solicitações recebidas pelo servidor. |
x-ms-access-tier |
Opcional. Indica a camada a ser definida no blob. Os valores válidos para camadas de blob de blocos são Hot , Cool , Cold e Archive .
Observação: Cold camada tem suporte para a versão 2021-12-02 e posterior.
Hot , Cool e Archive têm suporte para a versão 2018-11-09 e posterior. Para obter mais informações sobre camadas de blob de blocos, consulte camadas de armazenamento frequentes, esporádicas e de arquivos. |
x-ms-expiry-option |
Opcional. Versão 2023-08-03 e posterior. Especifica a opção de data de validade para a solicitação. Para obter mais informações, consulte ExpiryOption. Esse cabeçalho é válido para contas com namespace hierárquico habilitado. |
x-ms-expiry-time |
Opcional. Versão 2023-08-03 e posterior. Especifica a hora em que o blob está definido para expirar. O formato da data de validade varia de acordo com x-ms-expiry-option . Para obter mais informações, consulte ExpiryOption. Esse cabeçalho é válido para contas com namespace hierárquico habilitado. |
Essa operação também dá suporte ao uso de cabeçalhos condicionais para gravar o blob somente se uma determinada condição for atendida. Para obter mais informações, consulte Especificar cabeçalhos condicionais para operações de Armazenamento de Blobs.
Cabeçalhos de solicitação (chaves de criptografia fornecidas pelo cliente)
Os cabeçalhos a seguir podem ser especificados na solicitação para criptografar um blob com uma chave fornecida pelo cliente. A criptografia com uma chave fornecida pelo cliente (e o conjunto correspondente de cabeçalhos) é opcional.
Cabeçalho de solicitação | Descrição |
---|---|
x-ms-encryption-key |
Necessário. A chave de criptografia AES-256 codificada em Base64. |
x-ms-encryption-key-sha256 |
Necessário. O hash SHA256 codificado em Base64 da chave de criptografia. |
x-ms-encryption-algorithm: AES256 |
Necessário. Especifica o algoritmo a ser usado para criptografia. O valor desse cabeçalho deve ser AES256 . |
Corpo da solicitação
Nenhum.
Solicitação de exemplo
O exemplo a seguir mostra uma solicitação para criar um blob de blocos:
Request Syntax:
PUT https://myaccount.blob.core.windows.net/mycontainer/myblockblob HTTP/1.1
Request Headers:
x-ms-version: 2020-04-08
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
x-ms-copy-source: https://myaccount.blob.core.windows.net/mycontainer/myblob
x-ms-expiry-option: RelativeToNow
x-ms-expiry-time: 30000
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=
Content-Length: 0
Resposta
A resposta inclui um código de status HTTP e um conjunto de cabeçalhos de resposta.
Código de status
Uma operação bem-sucedida retorna o código de status 201 (Criado).
Para obter mais informações sobre códigos de status, consulte Status e códigos de erro.
Cabeçalhos de resposta
A resposta dessa operação inclui os cabeçalhos a seguir. A resposta também pode incluir cabeçalhos HTTP padrão adicionais. Todos os cabeçalhos padrão estão em conformidade com a especificação de protocolo HTTP/1.1 .
Cabeçalho de resposta | Descrição |
---|---|
ETag |
A ETag contém um valor que o cliente pode usar para executar operações de PUT condicional usando o cabeçalho de solicitação If-Match . O valor ETag está entre aspas. |
Last-Modified |
A data/hora em que o blob foi modificado pela última vez. O formato de data segue o RFC 1123. Para obter mais informações, consulte Representar valores de data/hora em cabeçalhos. Qualquer operação de gravação no blob (incluindo atualizações nos metadados ou propriedades do blob) altera a hora da última modificação do blob. |
Content-MD5 |
Retornado para um blob de blocos para que o cliente possa verificar a integridade do conteúdo da mensagem. O valor retornado Content-MD5 é calculado pelo Armazenamento de Blobs. Esse cabeçalho é retornado mesmo quando a solicitação não inclui cabeçalhos Content-MD5 ou x-ms-blob-content-md5 . |
x-ms-content-crc64 |
Retornado para um blob de blocos para que o cliente possa verificar a integridade do conteúdo da mensagem. O valor retornado x-ms-content-crc64 é calculado pelo Armazenamento de Blobs. Esse cabeçalho sempre é retornado. |
x-ms-request-id |
Identifica exclusivamente a solicitação que foi feita e você pode usá-la para solucionar problemas da solicitação. Para obter mais informações, consulte Solucionar problemas de operações de API. |
x-ms-version |
A versão do Armazenamento de Blobs que foi usada para executar a solicitação. |
Date |
Um valor de data/hora UTC gerado pelo serviço, que indica a hora em que a resposta foi iniciada. |
Access-Control-Allow-Origin |
Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra correspondente. Esse cabeçalho retornará o valor do cabeçalho de solicitação de origem se houver uma correspondência. |
Access-Control-Expose-Headers |
Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra correspondente. Retorna a lista de cabeçalhos de resposta que devem ser expostos ao cliente ou emissor da solicitação. |
Access-Control-Allow-Credentials |
Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra correspondente que não permita todas as origens. Esse cabeçalho é definido como true . |
x-ms-request-server-encrypted: true/false |
O valor desse cabeçalho será definido como true se o conteúdo da solicitação for criptografado com êxito usando o algoritmo especificado. Caso contrário, o valor será definido como false . |
x-ms-encryption-key-sha256 |
Retornada 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. |
x-ms-encryption-scope |
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. |
x-ms-version-id: <DateTime> |
Retorna um valor de DateTime opaco que identifica exclusivamente o blob. O valor desse cabeçalho indica a versão do blob e pode ser usado em solicitações subsequentes para acessar o blob. |
Corpo da resposta
Nenhum.
Resposta de exemplo
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ção
A autorização é necessária ao chamar qualquer operação de acesso a dados no Armazenamento do Azure. Você pode autorizar a operação de Put Blob From URL
, conforme descrito abaixo.
Se uma solicitação especificar marcas com o cabeçalho de solicitação x-ms-tags
, o chamador deverá atender aos requisitos de autorização da operação Definir Marcas de Blob.
Importante
A Microsoft recomenda usar a ID do Microsoft Entra com identidades gerenciadas para autorizar solicitações ao Armazenamento do Azure. A ID do Microsoft Entra fornece segurança superior e facilidade de uso em comparação com a autorização de Chave Compartilhada.
O Armazenamento do Azure dá suporte ao uso da ID do Microsoft Entra para autorizar solicitações para dados de blob. Com a ID do Microsoft Entra, você pode usar o RBAC (controle de acesso baseado em função) do Azure para conceder permissões a uma entidade de segurança. A entidade de segurança pode ser um usuário, grupo, entidade de serviço de aplicativo ou identidade gerenciada do Azure. A entidade de segurança é autenticada pela ID do Microsoft Entra para retornar um token OAuth 2.0. Em seguida, o token pode ser usado para autorizar uma solicitação no serviço Blob.
Para saber mais sobre a autorização usando a ID do Microsoft Entra, consulte Autorizar o acesso a blobs usando a ID do Microsoft Entra.
Permissões
Veja abaixo a ação RBAC necessária para que um usuário, grupo, identidade gerenciada ou entidade de serviço do Microsoft Entra chame a operação Put Blob From URL
e a função rbac interna do Azure com menos privilégios que inclua esta ação:
-
ação rbac do Azure:
- Criar um novo blob de blocos: Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action
- Criar um blob de blocos novo ou substituir existente: Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write
- Função interna com privilégios mínimos:colaborador de dados de blob de armazenamento
Para saber mais sobre como atribuir funções usando o RBAC do Azure, consulte Atribuir uma função do Azure para acesso a dados de blob.
Observações
A operação de Put Blob From URL
tem suporte a partir da versão 2020-04-08.
Na versão 2020-10-02 e posterior, a autorização do Microsoft Entra tem suporte para a origem da operação de cópia.
O blob de origem pode ser de qualquer tipo, incluindo um blob de blocos, blob de acréscimo ou blob de página. O blob de destino, no entanto, deve ser um blob de blocos.
A operação Put Blob From URL
sempre copia todo o blob de origem. Não há suporte para copiar um intervalo de bytes ou um conjunto de blocos. Para executar atualizações parciais, consulte Colocar Bloco da URL. O blob de destino pode ser um blob de blocos existente ou pode ser um novo blob criado pela operação.
Quando você está usando um blob de blocos como objeto de origem, todo o conteúdo de blob confirmado é copiado. No entanto, a lista de blocos não é preservada e os blocos não confirmados não são copiados. O conteúdo do blob de destino é idêntico ao da origem, mas a lista de blocos confirmada não é preservada.
colocar propriedades e metadados do Blob
Quando você está criando um blob de blocos de uma fonte de cópia, as propriedades de blob padrão são copiadas por padrão do blob de origem. Se os metadados do aplicativo forem especificados na solicitação, eles serão armazenados sem copiar os metadados do blob de origem. Para definir explicitamente quaisquer cabeçalhos de conteúdo HTTP, você pode especificar o cabeçalho correspondente na solicitação.
Content-Type
Content-Encoding
Content-Length
Cache-Control
Content-Disposition
O tamanho do blob de destino sempre corresponde ao do blob de origem. O cabeçalho Content-Length
deve ser 0 na solicitação de Put Blob From URL
(porque não há corpo da solicitação) e a propriedade de comprimento de conteúdo para o blob de destino é inferida do tamanho da origem.
colocar blob de propriedades personalizadas de URL
Put Blob From Url
segue a mesma semântica que Put Blob
para definir propriedades personalizadas associadas a cabeçalhos HTTP padrão. Para obter mais informações, consulte propriedades personalizadas do Blob
marcas de índice de blob
Se as marcas para o blob de destino forem fornecidas no cabeçalho x-ms-tags
, elas deverão ser codificadas em cadeia de caracteres de consulta. As chaves de marca e os valores devem estar em conformidade com os requisitos de nomenclatura e comprimento, conforme especificado em Set Blob Tags
. Além disso, o cabeçalho x-ms-tags
pode conter até 2 KiB de marcas. Se mais marcas forem necessárias, use a operação Set Blob Tags
.
Se as marcas não forem fornecidas no cabeçalho x-ms-tags
, elas não serão copiadas do blob de origem.
escopos de criptografia e chaves fornecidas pelo cliente
A API Put Blob From URL
dá suporte a escopos de criptografia e chaves fornecidas pelo cliente usando os cabeçalhos x-ms-encryption-scope
e x-ms-encryption-key
, respectivamente.
Se o cabeçalho x-ms-copy-source
se referir ao mesmo blob de origem que o blob de destino no URI da solicitação, a operação Put Blob From URL
executará uma reescrita síncrona no local do blob. Isso permite que a reescrita de um blob use uma chave de criptografia ou um escopo de criptografia diferente.
Faturamento
As solicitações de preços podem ser originadas de clientes que usam APIs de Armazenamento de Blobs, diretamente por meio da API REST do Armazenamento de Blobs ou de uma biblioteca de clientes do Armazenamento do Azure. Essas solicitações acumulam encargos por transação. O tipo de transação afeta a forma como a conta é cobrada. Por exemplo, as transações de leitura se acumulam em uma categoria de cobrança diferente das transações de gravação. A tabela a seguir mostra a categoria de cobrança para solicitações Put Blob From URL
com base no tipo de conta de armazenamento:
Operação | Tipo de conta de armazenamento | Categoria de cobrança |
---|---|---|
Colocar Blob da URL (conta de destino1) | Blob de blocos Premium Uso geral padrão v2 Uso geral padrão v1 |
Operações de gravação |
Colocar blob da URL (conta de origem2) | Blob de blocos Premium Uso geral padrão v2 Uso geral padrão v1 |
Operações de leitura |
1A conta de destino é cobrada por uma transação para iniciar a gravação.
2A conta de origem incorre em uma transação para cada solicitação de leitura para o objeto de origem.
Além disso, se as contas de origem e destino residirem em regiões diferentes (por exemplo, Norte dos EUA e Sul dos EUA), a largura de banda usada para transferir a solicitação será cobrada para a conta de armazenamento de origem como saída. A saída entre contas na mesma região é gratuita.
Por fim, a criação de um novo blob com um nome diferente na mesma conta de armazenamento usa recursos de armazenamento adicionais, de modo que a operação resulta em um encargo em relação ao uso da capacidade da conta de armazenamento para esses recursos adicionais.
Para saber mais sobre os preços das categorias de cobrança especificadas, consulte de Preços do Armazenamento de Blobs do Azure.
Consulte também
Autorizar solicitações para o Statusde Armazenamento do Azure e códigos de errocódigos de erro do serviço BlobDefinir tempos limite para operações de serviço blob