Obter Ficheiro

A Get File operação lê ou transfere um ficheiro do sistema, incluindo os respetivos metadados e propriedades.

Disponibilidade do protocolo

Protocolo de partilha de ficheiros ativado Disponível
SMB Yes
NFS No

Pedir

O Get File pedido pode ser construído da seguinte forma. Recomendamos que utilize HTTPS.

Método URI do pedido Versão HTTP
GET https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile HTTP/1.1

Substitua os componentes de caminho que são apresentados no URI do pedido pelo seu, da seguinte forma:

Componente caminho Description
myaccount O nome da sua conta de armazenamento.
myshare O nome da partilha de ficheiros.
mydirectorypath Opcional. O caminho para o diretório.
myfile O nome do ficheiro.

Para obter informações sobre restrições de nomenclatura de caminhos, veja Partilhas de nomes e referências, diretórios, ficheiros e metadados.

Parâmetros URI

Os seguintes parâmetros adicionais podem ser especificados no URI do pedido:

Parâmetro Description
timeout Opcional. O timeout parâmetro é expresso em segundos. Para obter mais informações, veja Definir tempos limite para operações de Ficheiros do Azure.

Cabeçalhos do pedido

Os cabeçalhos de pedido obrigatórios e opcionais estão descritos na seguinte tabela:

Cabeçalho do pedido Description
Authorization Obrigatório. Especifica o esquema de autorização, o nome da conta e a assinatura. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure.
Date ou x-ms-date Obrigatório. Especifica a Hora Universal Coordenada (UTC) do pedido. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure.
x-ms-version Necessário para todos os pedidos autorizados. Especifica a versão da operação a utilizar para este pedido. Para obter mais informações, veja Controlo de versões dos serviços de Armazenamento do Azure.
Range Opcional. Devolve dados de ficheiro apenas a partir do intervalo de bytes especificado.
x-ms-range Opcional. Devolve dados de ficheiro apenas a partir do intervalo de bytes especificado. Se ambos e Rangex-ms-range forem especificados, o serviço utiliza o valor de x-ms-range. Se nenhum dos dois for especificado, todo o conteúdo do ficheiro será devolvido. Consulte Especificar o cabeçalho do intervalo para Ficheiros do Azure operações para obter mais informações.
x-ms-range-get-content-md5: true Opcional. Quando este cabeçalho está definido como true e é especificado em conjunto com o Range cabeçalho, o serviço devolve o hash MD5 para o intervalo, desde que o intervalo seja inferior ou igual a 4 mebibytes (MiB) de tamanho.

Se este cabeçalho for especificado sem o Range cabeçalho, o serviço devolve o código de estado 400 (Pedido Incorreto).

Se este cabeçalho estiver definido como true quando o intervalo exceder 4 MiB de tamanho, o serviço devolve o código de estado 400 (Pedido Incorreto).
x-ms-lease-id:<ID> Opcional. Versão 2019-02-02 e posterior. Se o cabeçalho for especificado, a operação só será efetuada se a concessão do ficheiro estiver atualmente ativa e o ID de concessão especificado no pedido corresponder ao ID de concessão do ficheiro. Caso contrário, a operação falha com o código de estado 412 (Falha na Pré-condição).
x-ms-client-request-id Opcional. Fornece um valor opaco gerado pelo cliente com um limite de carateres de 1 kibibyte (KiB) que é registado nos registos quando o registo é configurado. Recomendamos vivamente que utilize este cabeçalho para correlacionar as atividades do lado do cliente com os pedidos que o servidor recebe. Para obter mais informações, veja Monitorizar Ficheiros do Azure.
x-ms-file-request-intent Necessário se o Authorization cabeçalho especificar um token OAuth. O valor aceitável é backup. Este cabeçalho especifica que o Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action ou Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action deve ser concedido se estiverem incluídos na política RBAC atribuída à identidade autorizada com o Authorization cabeçalho. Disponível para a versão 2022-11-02 e posterior.
x-ms-allow-trailing-dot: { <Boolean> } Opcional. Versão 2022-11-02 e posterior. O valor booleano especifica se um ponto à direita presente no URL do pedido deve ser cortado ou não. Para obter mais informações, veja Nomenclatura e referência de partilhas, diretórios, ficheiros e metadados.

Corpo do pedido

Nenhum.

Resposta

A resposta inclui um código de estado HTTP, um conjunto de cabeçalhos de resposta e o corpo da resposta, que contém o conteúdo do ficheiro.

Código de estado

Uma operação bem-sucedida devolve o código de estado 200 (OK).

Para obter informações sobre códigos de estado, veja Códigos de Estado e Erro.

Cabeçalhos de resposta

A resposta para esta operação inclui os seguintes cabeçalhos. 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 do protocolo HTTP/1.1.

Cabeçalho de resposta Descrição
Last-Modified Devolve a data e hora em que o ficheiro foi modificado pela última vez. O formato de data segue RFC 1123. Para obter mais informações, veja Representar valores de data/hora em cabeçalhos. Qualquer operação que modificou o ficheiro ou as respetivas propriedades atualiza a hora da última modificação.
x-ms-meta-name:value Um conjunto de pares name-value associados a este ficheiro como metadados definidos pelo utilizador.
Content-Length O número de bytes presentes no corpo da resposta.
Content-Type O tipo de conteúdo especificado para o ficheiro. O tipo de conteúdo predefinido é application/octet-stream.
Content-Range O intervalo de bytes devolvido se o cliente tiver pedido um subconjunto do ficheiro ao definir o cabeçalho do Range pedido.
ETag Contém um valor que pode utilizar para realizar operações condicionalmente. O valor está entre aspas.
Content-MD5 Se o ficheiro tiver um hash MD5 e o pedido for ler o ficheiro completo, este cabeçalho de resposta é devolvido para que o cliente possa verificar a integridade do conteúdo da mensagem.

Se o pedido for ler um intervalo especificado e estiver x-ms-range-get-content-md5 definido como true, o pedido devolve um hash MD5 para o intervalo, desde que o tamanho do intervalo seja inferior ou igual a 4 MiB.

Se nenhum destes conjuntos de condições for true, não será devolvido nenhum valor para o Content-MD5 cabeçalho.

Se x-ms-range-get-content-md5 for especificado sem o cabeçalho do intervalo, o serviço devolve o código de estado 400 (Pedido Incorreto).

Se x-ms-range-get-content-md5 estiver definido como true quando o intervalo exceder 4 MiB, o serviço devolve o código de estado 400 (Pedido Incorreto).
Content-Encoding Devolve o valor especificado para o cabeçalho do Content-Encoding pedido.
Content-Language Devolve o valor especificado para o cabeçalho do Content-Language pedido.
Cache-Control É devolvido se tiver sido especificado anteriormente para o ficheiro.
Content-Disposition Devolve o valor que foi especificado para o x-ms-content-disposition cabeçalho e especifica como processar a resposta.

O Content-Disposition campo de cabeçalho de resposta transmite informações adicionais sobre como processar o payload de resposta e também pode ser utilizado para anexar metadados adicionais. Por exemplo, se estiver definido como attachment, Content-Disposition indica que o utilizador-agente não deve apresentar a resposta mas, em vez disso, deve apresentar uma janela Guardar Como.
x-ms-request-id Identifica exclusivamente o pedido que foi feito e pode ser utilizado para resolver o pedido. Para obter mais informações, veja Resolver problemas de operações da API.
x-ms-version A versão do serviço que foi utilizada para executar o pedido.
Accept-Ranges: bytes Indica que o serviço suporta pedidos de conteúdo de ficheiro parcial.
Date Date
x-ms-copy-completion-time:<datetime> Versão 2015-02-21 e posterior. A hora de conclusão da última tentativa de operação Copiar Ficheiro em que este ficheiro era o ficheiro de destino. Este valor pode especificar a hora de uma tentativa de cópia concluída, abortada ou falhada. Este cabeçalho não é apresentado se uma cópia estiver pendente, se este ficheiro nunca tiver sido o destino numa operação Copiar Ficheiro ou se este ficheiro tiver sido modificado após uma operação concluída de Copiar Ficheiro que utilizou Definir Propriedades de Ficheiro ou Criar Ficheiro.
x-ms-copy-status-description: <error string> Versão 2015-02-21 e posterior. Aparece apenas quando x-ms-copy-statusfalha ouestá pendente. Descreve a causa de uma falha fatal ou não fatal da operação de cópia. Este cabeçalho não é apresentado se este ficheiro nunca tiver sido o destino numa operação Copiar Ficheiro ou se este ficheiro tiver sido modificado após uma operação de Copiar Ficheiro concluída que utilizou Definir Propriedades do Ficheiro ou Criar Ficheiro.
x-ms-copy-id: <id> Versão 2015-02-21 e posterior. O identificador de cadeia para a última operação de tentativa de Copiar Ficheiro em que este ficheiro era o ficheiro de destino. Este cabeçalho não é apresentado se o ficheiro nunca tiver sido o destino numa operação Copiar Ficheiro ou se este ficheiro tiver sido modificado após uma operação de Copiar Ficheiro concluída que utilizou Definir Propriedades do Ficheiro ou Criar Ficheiro.
x-ms-copy-progress: <bytes copied/bytes total> Versão 2015-02-21 e posterior. Contém o número de bytes que foram copiados e o total de bytes na origem na última operação de tentativa de Copiar Ficheiro em que este ficheiro era o ficheiro de destino. Pode mostrar de 0 para o número de bytes copiados Content-Length . Este cabeçalho não é apresentado se este ficheiro nunca tiver sido o destino numa operação Copiar Ficheiro ou se este ficheiro tiver sido modificado após uma operação de Copiar Ficheiro concluída que utilizou Definir Propriedades do Ficheiro ou Criar Ficheiro.
x-ms-copy-source: url Versão 2015-02-21 e posterior. Um URL com até 2 KB de comprimento que especifica o ficheiro de origem que foi utilizado na última operação de tentativa de Copiar Ficheiro em que este ficheiro era o ficheiro de destino. Este cabeçalho não é apresentado se este ficheiro nunca tiver sido o destino numa operação Copiar Ficheiro ou se este ficheiro tiver sido modificado após uma operação de Copiar Ficheiro concluída que utilizou Definir Propriedades do Ficheiro ou Criar Ficheiro.
x-ms-copy-status: <pending ¦ success ¦ aborted ¦ failed> Versão 2015-02-21 e posterior. O estado da operação de cópia identificada por x-ms-copy-id, com estes valores:

- pending: A cópia está em curso. Verifique x-ms-copy-status-description se erros intermitentes e não fatais impedem o progresso da cópia, mas não causam falhas.
- success: a cópia foi concluída com êxito.
- aborted: A cópia foi terminada por Abortar Ficheiro de Cópia.
- failed: Falha na cópia. Veja x-ms-copy-status-description os detalhes da falha.

Este cabeçalho não é apresentado se este ficheiro nunca tiver sido o destino numa operação Copiar Ficheiro ou se este ficheiro tiver sido modificado após uma operação de Copiar Ficheiro concluída que utilizou Definir Propriedades do Ficheiro ou Criar Ficheiro.
x-ms-content-md5 A partir da versão 2016-05-31, se o ficheiro tiver um hash MD5 e se o pedido contiver um cabeçalho de intervalo (range ou x-ms-range), este cabeçalho de resposta é devolvido com o valor do valor MD5 de todo o ficheiro. Este valor pode ou não ser igual ao valor devolvido no Content-MD5 cabeçalho, que é calculado a partir do intervalo pedido.
x-ms-server-encrypted: true/false Versão 2017-04-17 e posterior. O valor deste cabeçalho está definido como true se os dados de ficheiro e os metadados da aplicação estiverem completamente encriptados com o algoritmo especificado. Se o ficheiro não estiver encriptado ou se apenas partes dos metadados de ficheiro/aplicação forem encriptadas, o valor será definido como false.
x-ms-file-permission-key A chave da permissão do ficheiro.
x-ms-file-attributes Os atributos do sistema de ficheiros no ficheiro. Para obter mais informações, veja a lista de atributos disponíveis.
x-ms-file-creation-time O valor de data/hora UTC que representa a propriedade de hora de criação do ficheiro.
x-ms-file-last-write-time O valor de data/hora UTC que representa a última propriedade de hora de escrita do ficheiro.
x-ms-file-change-time A data/hora UTC que representa a propriedade de hora de alteração do ficheiro.
x-ms-file-file-id O ID de ficheiro do ficheiro.
x-ms-file-parent-id O ID do ficheiro principal do ficheiro.
x-ms-lease-duration:infinite Versão 2019-02-02 e posterior. Quando um ficheiro é arrendado, especifica que a concessão é de duração infinita.
x-ms-lease-state: <available, leased, broken> Versão 2019-02-02 e posterior. Quando um ficheiro é arrendado, especifica o estado de concessão do ficheiro.
x-ms-lease-status: <locked, unlocked> Versão 2019-02-02 e posterior. Quando um ficheiro é arrendado, especifica o estado de concessão do ficheiro.
x-ms-client-request-id Pode ser utilizado para resolver problemas de pedidos e respostas correspondentes. O valor deste cabeçalho é igual ao valor do x-ms-client-request-id cabeçalho se estiver presente no pedido e o valor não contiver mais de 1024 carateres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente no pedido, não está presente na resposta.

Corpo da resposta

O corpo da resposta contém o conteúdo do ficheiro.

Resposta de amostra

Response Status:
HTTP/1.1 200 OK

Response Headers:
x-ms-type: File
x-ms-meta-m1: v1
x-ms-meta-m2: v2
Content-Length: 11
Content-Type: text/plain; charset=UTF-8
Date: <date>
ETag: "0x8CB171DBEAD6A6B"
Last-Modified: <date>
x-ms-version: 2019-02-02
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
x-ms-copy-id: 36650d67-05c9-4a24-9a7d-a2213e53caf6
x-ms-copy-source: <url>
x-ms-copy-status: success
x-ms-copy-progress: 11/11
x-ms-copy-completion-time: <date>
x-ms-lease-duration: infinite
x-ms-lease-state: leased
x-ms-lease-status: locked

Autorização

Apenas o proprietário da conta pode chamar esta operação.

Observações

Chamar Get File através de um intervalo que ainda não tem conteúdo ou que tenha sido limpo devolve 0 esses bytes.

Se chamar Get File sem intervalo especificado, o serviço devolve o intervalo de bytes até ao valor especificado para o x-ms-content-length cabeçalho. Para quaisquer intervalos que não tenham conteúdo, o serviço devolve 0 para esses bytes.

É Get File permitida a conclusão de uma operação de dois minutos por MiB. As operações que demoram mais de dois minutos por MiB, em média, excederão o tempo limite.

Ver também

Operações no Ficheiros do Azure