Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Atlas App Services

Connect to an Atlas App Services Backend - Node.js SDK

The App client is the interface to the Atlas App Services backend. It provides access to the authentication functionality, functions, and sync management.

  1. Crear una aplicación de servicios de aplicaciones

  2. Install the Realm Node.js SDK

Para conectarse al backend de App Services desde su cliente, debe crear un objeto de configuración. Luego, páselo a un Realm.App() instancia.

Debe incluir el campo id y el App ID para su aplicación de Servicios de aplicaciones, que puede encontrar en la interfaz de usuario de Servicios de aplicaciones.

// Initialize your App.
const app = new Realm.App({
id: "<yourAppId>",
});

Puedes crear varias instancias de un cliente de aplicación para conectarte a múltiples aplicaciones. Todas las instancias de cliente de aplicación que comparten el mismo ID de la aplicación utilizan la misma conexión subyacente.

Importante

Changing an App Config After Initializing the App

Cambiado en la versión 12.6.0: baseUrl no se encuentra en la caché de la configuración de la aplicación.

When you initialize the App client, the configuration is cached internally. Attempting to close and then re-open an App with a changed configuration within the same process has no effect. The client continues to use the cached configuration.

A partir de la versión del SDK de Node.js,12.6.0 el baseUrl del AppConfiguration no se almacena en caché. Esto significa que se puede cambiar el baseUrl y el cliente de la aplicación usará la configuración actualizada. En versiones anteriores del SDK, los cambios en el baseUrl de una configuración de la aplicación almacenada en caché no surten efecto.

Para recuperar una instancia del App Client desde cualquier parte de la aplicación, llame a Realm.App.getApp() y pase su App ID.

const app = Realm.App.getApp("<yourAppId>");

Puedes configurar un/una timeout opcional para las solicitudes en tu AppConfiguration. Acepta una cantidad de milisegundos antes de que la solicitud deba agotar el tiempo de espera.

You can use this timeout interval with the optional Sync configuration cancelWaitsOnNonFatalErrors boolean. When the timeout interval elapses, any outstanding work that is awaiting uploads and downloads cancels. When this setting is false, awaiting uploads and downloads does not cancel because Realm treats these timeouts as non-fatal errors.

Para ver un ejemplo, consultar Cancelar operaciones asíncronas después de un tiempo de espera.

const app = new Realm.App({
id: APP_ID,
// You can optionally specify a timeout in milliseconds
timeout: 10000,
});

Puedes cifrar los metadatos que aplicación Services almacena en los dispositivos de los clientes. Utiliza los valores del enumerado MetadataMode para determinar el comportamiento de cifrado.

Para cifrar los metadatos de la aplicación:

  1. Importa MetadataMode desde Realm e importa otras dependencias:

    import Realm, { BSON, MetadataMode } from "realm";
    import Realm, {
    AppConfiguration,
    BSON,
    MetadataMode,
    Configuration,
    } from "realm";
  2. Create an App configuration object that contains the metadata property.

  3. Establezca metadata.mode en MetadataMode.Encryption.

  4. Configura metadata.encryptionKey como la clave que deseas usar para el cifrado.

  5. Pass the App configuration object to new Realm.App().

// Retrieve encryption key from secure location or create one
const encryptionKey = new ArrayBuffer(64);
// Use encryption key in app configuration
const config = {
id: APP_ID,
metadata: { mode: MetadataMode.Encryption, encryptionKey: encryptionKey },
};
const app = new Realm.App(config);
// Retrieve encryption key from secure location or create one
const encryptionKey = new ArrayBuffer(64);
// Use encryption key in app configuration
const config: AppConfiguration = {
id: APP_ID,
metadata: { mode: MetadataMode.Encryption, encryptionKey: encryptionKey },
};
const app = new Realm.App(config);

Volver

Atlas App Services

En esta página