Carregue ou substitua o conteúdo de um DriveItem

A API de upload simples permite que você forneça o conteúdo de um novo arquivo ou atualize o conteúdo de um arquivo existente em uma única chamada à API. Este método só dá suporte a arquivos com até 4 MB de tamanho.

Para carregar arquivos grandes, confira Carregar arquivos grandes com uma sessão de carregamento.

Permissões

Uma das permissões a seguir é necessária para chamar essa API. Para saber mais, incluindo como escolher permissões, confira Permissões.

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante) Files.ReadWrite, Files.ReadWrite.All, Sites.ReadWrite.All
Delegado (conta pessoal da Microsoft) Files.ReadWrite, Files.ReadWrite.All
Aplicativo Files.ReadWrite.All, Sites.ReadWrite.All

Solicitação HTTP (para substituir um item existente)

PUT /drives/{drive-id}/items/{item-id}/content
PUT /groups/{group-id}/drive/items/{item-id}/content
PUT /me/drive/items/{item-id}/content
PUT /sites/{site-id}/drive/items/{item-id}/content
PUT /users/{user-id}/drive/items/{item-id}/content

Solicitação HTTP (para carregar um novo arquivo)

PUT /drives/{drive-id}/items/{parent-id}:/{filename}:/content
PUT /groups/{group-id}/drive/items/{parent-id}:/{filename}:/content
PUT /me/drive/items/{parent-id}:/{filename}:/content
PUT /sites/{site-id}/drives/{drive-id}/{parent-id}:/{filename}:/content
PUT /users/{user-id}/drive/items/{parent-id}:/{filename}:/content

Corpo da solicitação

O conteúdo do corpo da solicitação deve ser o fluxo binário do arquivo a ser carregado.

Resposta

Se for bem-sucedido, este método retornará um objeto driveItem no corpo da resposta para o arquivo recém-criado ou atualizado.

Exemplo (carregar um novo arquivo)

Este exemplo carrega a cadeia de caracteres "O conteúdo do arquivo vai aqui" para um arquivo na unidade do usuário conectado em FolderA chamado FileB.txt.

PUT /me/drive/root:/FolderA/FileB.txt:/content
Content-Type: text/plain

The contents of the file goes here.

Resposta

Se for bem-sucedido, esse método retornará um recurso driveItem no corpo da resposta para o arquivo recém-criado.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "0123456789abc",
  "name": "FileB.txt",
  "size": 35,
  "file": { }
}

Exemplo (atualizando um arquivo existente)

Este exemplo substitui o conteúdo de um arquivo com uma ID conhecida.

PUT /me/drive/items/{item-id}/content
Content-Type: text/plain

The contents of the file goes here.

Resposta

Se for bem-sucedido, esse método retornará um recurso driveItem no corpo da resposta para o arquivo recém-criado.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "0123456789abc",
  "name": "FileB.txt",
  "size": 35,
  "file": { }
}

Comentários

Tipos de Arquivos Bloqueados

O SharePoint Server 2016 bloqueia o carregamento de várias extensões de arquivo no servidor.

  • .ashx – arquivo de manipulador da Web ASP.NET
  • .asmx – arquivo de origem de Serviços Web ASP.NET
  • .json – arquivo do JavaScript Object Notation
  • .soap – arquivo Simple Object Access Protocol
  • .svc – arquivo do serviço do WCF(Windows Communication Foundation)
  • .xamlx – arquivo do serviço Visual Studio Workflow

Confira Tipos de arquivos que não podem ser adicionados a uma lista ou biblioteca para obter mais informações sobre extensões de arquivo bloqueadas.

Comportamento de Resolução de Conflitos

Por padrão, essa API substituirá um item existente com o mesmo nome. Para personalizar o comportamento de resolução de conflitos, adicione um parâmetro de consulta nomeado @microsoft.graph.conflictBehavior com valores fail, replace ou rename, para a solicitação.

Respostas de erros

Confira Respostas de erro para saber mais detalhes sobre como os erros retornam.