Cargar o reemplazar el contenido de un objeto DriveItem

La API de carga simple le permite proporcionar el contenido de un archivo nuevo o actualizar el contenido de un archivo existente en una sola llamada API. Este método solo admite archivos de hasta 4 MB de tamaño.

Para cargar archivos grandes, consulte Upload large files with an upload session (Cargar archivos grandes con una sesión de carga).

Permisos

Se requiere uno de los siguientes permisos para llamar a esta API. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) Files.ReadWrite, Files.ReadWrite.All, Sites.ReadWrite.All
Delegado (cuenta personal de Microsoft) Files.ReadWrite, Files.ReadWrite.All
Aplicación Files.ReadWrite.All, Sites.ReadWrite.All

Solicitud HTTP (para reemplazar un elemento 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

Solicitud HTTP (para cargar un archivo nuevo)

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}/drive/items/{parent-id}:/{filename}:/content
PUT /users/{user-id}/drive/items/{parent-id}:/{filename}:/content

Cuerpo de solicitud

El contenido del cuerpo de la solicitud debe ser la secuencia binaria del archivo que se cargará.

Respuesta

Si se ejecuta correctamente, este método devuelve un objeto driveItem en el cuerpo de la respuesta del archivo que se ha creado o actualizado.

Ejemplo (se carga un nuevo archivo)

Este ejemplo carga la cadena "The contents of the file goes here." (El contenido del archivo va aquí.) en un archivo en la unidad del usuario que ha iniciado sesión en FolderA denominado FileB.txt.

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

The contents of the file goes here.

Respuesta

Si se ejecuta correctamente, este método devuelve un recurso driveItem en el cuerpo de la respuesta del archivo que se ha creado.

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

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

Ejemplo (actualizar un archivo existente)

Este ejemplo reemplaza el contenido de un archivo con un identificador conocido.

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

The contents of the file goes here.

Respuesta

Si se ejecuta correctamente, este método devuelve un recurso driveItem en el cuerpo de la respuesta del archivo que se ha creado.

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

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

Comentarios

Tipos de archivos bloqueados

SharePoint Server 2016 impide que varias extensiones de archivo se carguen en el servidor.

  • .ashx: controlador de archivos web ASP.NET
  • .asmx: archivo de origen de servicios web ASP.NET
  • .json: archivo de notación de objetos JavaScript
  • .soap: archivo de Protocolo simple de acceso a objetos
  • .svc: archivo de servicio de Windows Communication Foundation (WCF)
  • .xamlx: archivo de servicio de flujo de trabajo de Visual Studio

Vea Tipos de archivos que no se pueden agregar a una lista o biblioteca para obtener más información sobre las extensiones de archivo bloqueadas.

Comportamiento de la resolución de conflictos

De forma predeterminada, esta API reemplazará a un elemento existente del mismo nombre. Para personalizar el comportamiento de la resolución de conflictos, agregue un parámetro de consulta denominado @microsoft.graph.conflictBehavior con los valores error, reemplazar o cambiar nombre a la solicitud.

Respuestas de error

Vea Respuestas de error para obtener los detalles sobre la manera en que se devuelven los errores.