Compartir a través de


Use OAuth con CORS para conectar un SPA

Puede crear aplicaciones de una sola página (SPA) que usen JavaScript para trabajar con datos de Microsoft Dataverse mediante la API web. Para habilitar la creación de aplicaciones como estas, Dataverse habilitó Uso compartido de recursos de origen cruzado (CORS) de forma que las SPA puedan superar las restricciones de explorador que evitan normalmente las solicitudes que cruzan límites de dominio.

SPA y Directiva de mismo origen

Las SPA dependen de un uso amplio de JavaScript del lado del cliente para crear una sola página dinámica que no necesite cargar nuevas páginas. En su lugar, utilizan patrones de programación que utilizan solicitudes de red, a veces llamadas "Ajax", para recuperar datos y otros recursos del servidor. Las SPA funcionan bien cuando los datos y recursos existen en el mismo dominio que la aplicación. Pero para proteger el acceso a los datos y recursos de otros dominios, todos los exploradores modernos aplican una directiva de Mismo origen para evitar que los sitios usen datos y recursos de sitios en un dominio distinto. CORS proporciona una forma de tener acceso a los recursos en otro dominio. Crear un SPA para tener acceso a datos de Dataverse sin CORS no es una opción viable.

Utilizar CORS con Dataverse

El protocolo CORS proporciona una descripción detallada de cómo implementar y usar CORS. Explica todo sobre los diferentes encabezados y las solicitudes de preparación que necesita aplicar para que CORS funcione. La buena noticia es que no necesita convertirse en un experto en CORS para usarla con aplicaciones Dataverse. La parte del lado del servidor se ha realizado para usted y lo único que necesita es saber cómo consumirlo. No necesita comprender el funcionamiento interno de CORS para usarla con aplicaciones Dataverse. En su lugar puede usar la Biblioteca de autenticación de Microsoft para JavaScript (MSAL.js), que se ocupará de gran parte de la complejidad de CORS por usted. Dado que los usuarios de Dataverse se autentican con Microsoft Entra ID, MSAL.js es la forma compatible para autenticar usuarios de SPA.

Preparación para usar MSAL.js con una SPA

Para configurar su SPA para que funcione con MSAL.js deberá:

  1. Registrar su aplicación con el inquilino de Microsoft Entra ID.
  2. Establezca variables de configuración en su SPA con información de ese registro.
    Deberá incluir los elementos siguientes:
    • La dirección URL de su organización de Dataverse.
    • El identificador del inquilino de Microsoft Entra ID que usa la organización para autenticarse.
    • El identificador del cliente que obtiene al registrar la aplicación.
    • La dirección URL donde se implementará o depurará la SPA durante el desarrollo.

El conjunto de pasos necesarios se describe en Inicio rápido: API web con JavaScript del lado del cliente y Visual Studio Code.

Consulte también

Usar OAuth para conectarse a servicios web de Dataverse
Inicio rápido: API web con JavaScript del lado cliente y Visual Studio Code
Inicio rápido: registrar una aplicación en la plataforma de identidad de Microsoft