Acceso, almacenamiento y recuperación de archivos en SharePoint Embedded con Microsoft Graph

Completado

En este ejercicio, usará Postman para acceder, almacenar y recuperar archivos y documentos en un contenedor incrustado de SharePoint mediante el cliente de Postman.

Requisitos previos

Importante

En este momento, muchos de los puntos de conexión de Microsoft Graph usados para crear, acceder y administrar recursos específicos de SharePoint Embedded solo existen en el punto de conexión beta de Microsoft Graph. Sin embargo, todos los puntos de conexión que tienen acceso a los contenedores y el contenido de contiene se encuentran en el punto de conexión de Microsoft Graph v1.0.

Configuración de la carpeta delegada de la colección Postman

El primer paso consiste en configurar la carpeta Delegada en la colección postman que creó anteriormente para obtener un token de acceso de aplicación y usuario, también conocido como token de acceso delegado , para que podamos realizar llamadas a la aplicación.

En el cliente de Postman, seleccione la colección de SharePoint Embedded, seleccione la carpeta Delegado y, a continuación, seleccione la pestaña Autorización . Configure los siguientes valores (omita los campos que no se mencionan en la lista siguiente):

  • Tipo: OAuth 2.0
  • Agregar datos de autenticación a: Encabezados de solicitud
  • Token actual:
    • Token: tokens disponibles
    • Prefijo de encabezado: portador
  • Configuración del nuevo token
    • Nombre del token: Graph App+User Token
    • Tipo de concesión: código de autorización
    • Dirección URL de devolución de llamada:https://oauth.pstmn.io/v1/browser-callback
    • URL de autorización: https://login.microsoftonline.com/common/oauth2/v2.0/authorize
    • URL del token de acceso: https://login.microsoftonline.com/common/oauth2/v2.0/token
    • Id. de cliente: {{ClientID}}
    • Secreto de cliente: {{ClientSecret}}
    • Ámbito: FileStorageContainer.Selected offline_access

Captura de pantalla de la pestaña Autenticación de la carpeta delegada en Postman.

Seleccione el botón Obtener nuevo token de acceso en la parte inferior del formulario. Esto desencadenará una ventana emergente que contiene la página de inicio de sesión de Microsoft Entra ID. Inicie sesión con la cuenta de administrador profesional y educativa del inquilino de Microsoft 365 y, si se le pide que conceda consentimiento a los permisos solicitados, seleccione Aceptar. Cuando se cierre la ventana emergente, Postman habrá recibido el token y lo mostrará en un elemento emergente de confirmación. Seleccione Usar token para guardarlo en futuras solicitudes.

Nota:

Al agregar el ámbito offline_access, Microsoft Entra ID responderá con un token de actualización para que Postman no solo pueda almacenar el token de acceso localmente en la estación de trabajo, sino que puede actualizar automáticamente el token si expira la próxima vez que lo use.

En el panel Colección, seleccione la carpeta Contenedor delegado > y, a continuación, seleccione la pestaña Autorización. Establezca tipo en Heredar autenticación del elemento primario.

Captura de pantalla de la configuración de autenticación de la carpeta delegada en Postman.

Uso de la API REST de Microsoft Graph para enumerar todos los contenedores

Ahora que las carpetas Delegado y Contenedor de la colección Postman están configuradas, agregue una nueva solicitud para obtener una lista de todos los contenedores.

Cree una nueva solicitud seleccionando el vínculo Agregar una solicitud en la carpeta contenedor delegado > vacía o seleccionando ... > Agregue la solicitud desde el menú contextual al mantener el mouse sobre la carpeta Contenedor delegado > y establezca los siguientes valores en la nueva solicitud:

  • Nombre: Lista de contenedores
  • Método HTTP: GET
  • Punto de conexión HTTP: https://graph.microsoft.com/beta/storage/fileStorage/containers?$filter=containerTypeId eq {{ContainerTypeId}}

Seleccione Enviar para ejecutar la solicitud. Debería ver una respuesta válida de cero contenedores encontrados.

Captura de pantalla de la solicitud List Containers.

Uso de la API REST de Microsoft Graph para crear un nuevo contenedor

Vamos a crear nuestro primer contenedor mediante la API REST de Microsoft Graph.

Cree una nueva solicitud con los valores siguientes:

  • Nombre: Crear contenedor

  • Método HTTP: POST

  • Punto de conexión HTTP: https://graph.microsoft.com/beta/storage/fileStorage/containers

  • Cuerpo: JSON sin formato >

    {
      "displayName": "Sample App Container 1",
      "description": "First container description.",
      "containerTypeId": "{{ContainerTypeId}}"
    }
    

Para ejecutar la solicitud, seleccione Enviar.

Microsoft Graph responderá con un código HTTP 201 si se realiza correctamente con un resumen de los nuevos detalles del contenedor:

Captura de pantalla que muestra la nueva solicitud Create Container y la respuesta de una ejecución correcta.

Ahora, si vuelve a ejecutar la solicitud List Containers , verá que ahora devuelve el contenedor que ha creado.

Vamos a almacenar el identificador del contenedor para su uso futuro.

Seleccione el valor de la propiedad de id la respuesta, selecciónela con el botón derecho y seleccione la propiedad ContainerID del entorno.

Captura de pantalla que muestra cómo actualizar la variable de un entorno con una respuesta actual.

Uso de la API REST de Microsoft Graph para obtener los detalles de un contenedor específico

A continuación, cree una nueva solicitud para obtener un único contenedor mediante la API REST de Microsoft Graph.

Vuelva a la colección SharePoint Embedded, vuelva a la carpeta Contenedor delegado > y cree una nueva solicitud con los valores siguientes:

  • Nombre: Obtener contenedor

  • Método HTTP: GET

  • Punto de conexión HTTP:

    https://graph.microsoft.com/beta/storage/fileStorage/containers/{{ContainerID}}?$select=id,displayName,containerTypeId,status,description,customProperties&$expand=permissions
    

Para ejecutar la solicitud, seleccione Enviar. Microsoft Graph responderá con los detalles del contenedor.

Agregar archivos a un contenedor existente

Todos los contenedores de SharePoint Embedded se pueden tratar como un objeto de Unidad de Microsoft Graph que resultará familiar para los desarrolladores que trabajan con los puntos de conexión de OneDrive en Microsoft Graph. Esto significa que puede usar todos los puntos de conexión y código de Drive existentes que haya creado anteriormente para administrar el contenido de un objeto Drive con el fin de administrar el contenido en contenedores incrustados de SharePoint.

Acceso a un contenedor como un objeto Drive

Cree una nueva carpeta Archivos en la carpeta Delegada de la colección Postman.

A continuación, cree una nueva solicitud en la carpeta Archivos delegados > con los valores siguientes:

  • Nombre: Obtener unidad
  • Método HTTP: GET
  • Punto de conexión HTTP: https://graph.microsoft.com/v1.0/drives/{{ContainerID}}

Repita el proceso para obtener una lista de todos los archivos, también conocidos como DriveItems, en el objeto Drive mediante el punto de items conexión:

  • Nombre: Obtener DriveItems
  • Método HTTP: GET
  • Punto de conexión HTTP: https://graph.microsoft.com/v1.0/drives/{{ContainedID}}/items/root/children

Para ejecutar la solicitud, seleccione Enviar. Microsoft Graph responderá con el contenido del contenedor de SharePoint Embedded:

Captura de pantalla que muestra el contenido del contenedor mediante los puntos de conexión drive y DriveItems de Microsoft Graph v1.0 existentes.

Carga de un archivo en el contenedor

Con el contenedor creado y la capacidad de ver los archivos de un contenedor mediante los puntos de conexión existentes de Unidad de Microsoft Graph y DriveItems, vamos a agregar un archivo al contenedor.

Cree un documento de Microsoft Word. En este ejemplo, usaremos un documento para un calendario modificable para enero de 2024 creado a partir de una de las plantillas de Microsoft Word incluidas. En este ejemplo, el archivo se llama Jan2024.docx.

Cree una nueva solicitud en la carpeta Archivos delegados > con los valores siguientes:

  • Nombre: Cargar un archivo
  • Método HTTP: PUT
  • Punto de conexión HTTP: https://graph.microsoft.com/v1.0/drives/{{ContainerId}}/root:/Jan2024.docx:/content
  • Cuerpo:
    • Tipo: binary
    • Seleccione el archivo de Microsoft Word (Jan2024.docx en este ejemplo)

Nota:

Actualice el punto de conexión para usar el nombre del archivo que desea crear en el contenedor. En este ejemplo, se usa Jan2024.docx.

Seleccione Enviar para cargar el archivo:

Captura de pantalla que muestra los resultados de cargar un archivo en un contenedor mediante el punto de conexión Unidades de Microsoft Graph.

Vuelva a ejecutar la solicitud Get DriveItems para ver el archivo en el contenedor:

Captura de pantalla que muestra los contenidos del contenedor mediante el punto de conexión DriveItems de Microsoft Graph.

Resumen

En este ejercicio, usó Postman para acceder, almacenar y recuperar archivos y documentos en un contenedor incrustado de SharePoint mediante el cliente de Postman llamando a las API REST de Microsoft Graph con un token de acceso de aplicación y usuario.

Compruebe sus conocimientos

1.

¿Qué pueden usar los desarrolladores para acceder a los archivos y documentos en contenedores incrustados de SharePoint?

2.

¿Cómo se puede crear un nuevo contenedor en el inquilino de consumo?

3.

¿Cómo se puede cargar un archivo en un contenedor?