Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
MongoDB Branding Shape
Click here >
Docs Menu

Stable API

Nota

La funcionalidad Stable API requiere MongoDB Server 5.0 o posterior.

Utilizar la funcionalidad de la Stable API solo si todos los servidores MongoDB a los que te conectas admiten esta funcionalidad.

En esta guía, puede aprender cómo especificar la Stable API al conectarse a una instancia de MongoDB o a un set de réplicas. Puedes usar la funcionalidad Stable API para forzar que el servidor ejecute operaciones con un comportamiento compatible con la versión de API especificada. Una versión de API define el comportamiento esperado de las operaciones que cubre y el formato de las respuestas del servidor. Si cambias a una versión diferente de la API, no se garantiza que las operaciones sean compatibles y no se garantiza que las respuestas del servidor sean similares.

Cuando utilices la funcionalidad Stable API con un driver oficial de MongoDB, podrás actualizar tu driver o servidor sin preocuparte por problemas de retrocompatibilidad de los comandos cubiertos por la Stable API.

Consulta la página de referencia de MongoDB sobre la Stable API para obtener más información, incluida una lista de los comandos que cubre.

Las siguientes secciones describen cómo se puede habilitar la Stable API para el cliente de MongoDB y las opciones que se pueden especificar.

Para habilitar la Stable API, debes especificar una versión de la API en el MongoClientOptions que se pasa a tu MongoClient. Una vez que se instancie una instancia de MongoClient con una versión de API especificada, todos los comandos que se ejecuten con ese cliente utilizarán esa versión de la Stable API.

Tip

Debes crear un nuevo cliente para cada versión de la Stable API en
en el que quieras ejecutar un comando.

Para ejecutar comandos que no están cubiertos por la Stable API, asegúrate de que la opción "estricta" esté desactivada. Consulte la sección sobre Opciones de Stable API para obtener más información.

El siguiente ejemplo muestra cómo puedes instanciar un MongoClient que establece la versión Stable API y se conecta a un servidor realizando las siguientes operaciones:

  • Especifica una URI de servidor a la que conectarte.

  • Especifique una versión de Stable API en el objeto MongoClientOptions, utilizando una constante del objeto ServerApiVersion.

  • Instancia un MongoClient, pasando el URI y el MongoClientOptions al constructor.

const { MongoClient, ServerApiVersion } = require("mongodb");
// Replace the placeholders in the connection string uri with your credentials
const uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&w=majority";
// Create a client with options to specify Stable API Version 1
const client = new MongoClient(uri, { serverApi: ServerApiVersion.v1 });

Advertencia

Si especificas una versión de API y te conectas a un MongoDB Server que no admite la Stable API, tu aplicación puede lanzar un error al conectarse a tu MongoDB Server con el siguiente texto:

MongoParseError: Invalid server API version=...

Para obtener más información sobre los métodos y clases mencionados en esta sección, consulta la siguiente documentación de la API:

Puedes habilitar o deshabilitar el comportamiento opcional relacionado con la Stable API como se describe en la siguiente tabla.

Nombre de la opción
Descripción

Versión

Obligatorio. Especifica la versión de la API estable.

Valor predeterminado: null

estricto

Opcional. Cuando está activada, si se llama a un comando que no forma parte de la versión de API declarada, el controlador genera una excepción.

Valor predeterminado: falso

errores de obsolescencia

Opcional. Cuando está activada, si se llama a un comando obsoleto en la versión de API declarada, el controlador genera una excepción.

Valor predeterminado: falso

El siguiente ejemplo muestra cómo puedes configurar las opciones de la interfaz ServerApi.

const { MongoClient, ServerApiVersion } = require("mongodb");
// Replace the placeholders in the connection string uri with your credentials
const uri = "mongodb+srv://<user>:<password>@<cluster-url>?retryWrites=true&w=majority";
/* Create a client with options to specify Stable API Version 1, return
errors for commands outside of the API version, and raise exceptions
for deprecated commands */
const client = new MongoClient(uri,
{
serverApi: {
version: ServerApiVersion.v1,
strict: true,
deprecationErrors: true,
}
});

Para obtener más información sobre las opciones de esta sección, consulta la siguiente documentación de la API: