Compartir a través de


Cómo: Obtener datos de contexto (versión preliminar)

La getContext función recupera información contextual sobre la aplicación y el usuario que ha iniciado sesión. Esta información permite a las aplicaciones ofrecer experiencias personalizadas y tomar decisiones fundamentadas en tiempo de ejecución en función de los metadatos. La getContext función se comunica con el reproductor web para obtener datos de contexto. Está diseñado para ser ligero y se centra en metadatos y propiedades relacionadas con la autenticación.

¿Por qué usar datos de contexto?

Los datos de contexto devueltos por la getContext función proporcionan detalles completos sobre la aplicación y el usuario, lo que permite escenarios que van más allá de la funcionalidad básica de la aplicación. Este es el motivo por el que importan estas propiedades:

  • Telemetría mejorada y depuración: Los parámetros como sessionId te permiten correlacionar sesiones de la app con la telemetría de la plataforma, lo que facilita la identificación de problemas. El acceso a identificadores como IAppContext.appId e IUserContext.userPrincipalName ayuda a realizar un seguimiento de los patrones de uso y diagnosticar problemas rápidamente.

  • Experiencias personalizadas: las propiedades de contexto del usuario simplifican la personalización sin necesidad de llamadas de datos adicionales. Puede adaptar el comportamiento de la aplicación en función de la identidad del usuario, ofreciendo experiencias dinámicas para diferentes roles o individuos.

  • Control de características y lógica condicional: los parámetros pueden actuar como puertas o marcas de características, lo que le permite activar o desactivar características para usuarios o entornos específicos. También se pueden usar para mostrar diferentes elementos de interfaz de usuario o flujos de trabajo en función del contexto.

  • Coherencia con las aplicaciones de Canvas: estos parámetros se alinean con los detalles de la sesión disponibles en las aplicaciones de lienzo, pero ahora puede usarlos directamente en el código, lo que permite desbloquear más flexibilidad.

Steps

  1. Importar las funciones initialize y getContext

    import { initialize, getContext } from '@microsoft/power-apps/app'; 
    
  2. Initialize

    Debe llamar a la función initialize y esperar a que se complete antes de realizar cualquier llamada de datos para asegurarse de que el SDK esté totalmente inicializado.

    await initialize(); 
    
  3. Recuperación del contexto

    Llame getContext a como una función asincrónica para obtener el objeto de contexto.

    const ctx = await getContext();
    
    // Now you can access these context properties
    const appId = ctx.app.appId
    const environmentId = ctx.app.environmentId
    const queryParams = ctx.app.queryParams
    const fullName = ctx.user.fullName
    const objectId = ctx.user.objectId
    const tenantId = ctx.user.tenantId
    const userPrincipalName = ctx.user.userPrincipalName
    const sessionId = ctx.host.sessionId
    

Respuesta de la API

El contexto devuelto implementa la interfaz IContext .

IContext

En la tabla siguiente se describen las propiedades disponibles en la IContext interfaz:

Propiedad Tipo Description
app IAppContext Contexto de la aplicación
user IUserContext Contexto del usuario
host IHostContext Contexto del host

IAppContext

En la tabla siguiente se describen las propiedades disponibles en la IAppContext interfaz:

Propiedad Tipo Description
appId cuerda / cadena El identificador de la aplicación que se está reproducendo
environmentId cuerda / cadena Identificador del entorno en el que reside la aplicación
queryParams Cadena de registro<, cadena> Parámetros de consulta agregados a la dirección URL

IUserContext

En la tabla siguiente se describen las propiedades disponibles en la IUserContext interfaz:

Propiedad Tipo Description
fullName cuerda / cadena Nombre completo del usuario que utiliza la aplicación
objectId cuerda / cadena El identificador del usuario que reproduce la aplicación
tenantId cuerda / cadena Identificador del inquilino donde reside la aplicación
userPrincipalName cuerda / cadena UPN del usuario que usa la aplicación

IHostContext

En la tabla siguiente se describe la propiedad disponible en la IHostContext interfaz :

Propiedad Tipo Description
sessionId cuerda / cadena Identificador de la sesión actual. Esto cambia cada vez que se abre la aplicación.