Nota
La función API estable requiere MongoDB Server 5.0 o posterior.
Overview
En esta guía, puedes aprender a especificar la compatibilidad de la API estable al conectarse a una implementación de MongoDB.
La funcionalidad Stable API obliga al servidor a ejecutar operaciones con comportamientos compatibles con la versión de la API que especifiques. Al actualizar el controlador o el servidor, la versión de la API cambia, lo que puede afectar el comportamiento de estas operaciones. El uso de la API Estable garantiza respuestas coherentes del servidor y proporciona estabilidad a largo plazo de la API para tu aplicación.
Las siguientes secciones describen cómo se puede habilitar y personalizar la Stable API para su cliente de MongoDB. Para obtener más información sobre la Stable API, incluida una lista de los comandos que admite, consulta API estable en el manual del servidor MongoDB.
Activar la API estable
Para habilitar la API Stable, realiza los siguientes pasos:
Construir un
mongocxx::options::server_apiObjeto y especifique una versión estable de la API. Debe usar una versión estable de la API definida en la enumeraciónmongocxx::options::server_api::version. Actualmente, el controlador solo admite la versión 1 (k_version_1).Construya un objeto
mongocxx::options::client. Establezca el camposerver_api_optsde este objeto en el objetoserver_apique creó en el paso anterior.Construya un objeto
mongocxx::client, pasando su objetomongocxx::uriy el objetomongocxx::options::clientque creó en el paso anterior.
El siguiente ejemplo de código muestra cómo especificar la versión Stable API 1:
int main() { mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>"); mongocxx::options::server_api server_api_options(mongocxx::options::server_api::version::k_version_1); mongocxx::options::client client_options; client_options.server_api_opts(server_api_options); mongocxx::client client(uri, client_options); }
Nota
Después de que crees una instancia de mongocxx::client con una versión de API especificada, todos los comandos que ejecutes con el cliente usarán la versión especificada. Si necesitas ejecutar comandos utilizando más de una versión de la Stable API, crea una nueva instancia mongocxx::client.
Configura la Stable API
La siguiente tabla describe las propiedades de la clase server_api_options. Puedes usar estas propiedades para personalizar el comportamiento de la Stable API.
Nombre de la opción | Descripción |
|---|---|
estricto | Optional. When true, if you call a command that isn't part of
the declared API version, the driver raises an exception.Default: false |
errores_de_uso_no_recomendado | Optional. When true, if you call a command that is deprecated in the
declared API version, the driver raises an exception.Default: false |
El siguiente ejemplo de código muestra cómo puedes usar estos parámetros al construir un objeto ServerApi:
int main() { mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>"); mongocxx::options::server_api server_api_options(mongocxx::options::server_api::version::k_version_1); server_api_options.strict(true); server_api_options.deprecation_errors(true); mongocxx::options::client client_options; client_options.server_api_opts(server_api_options); mongocxx::client client(uri, client_options); }
Documentación de la API
Para obtener más información sobre el uso de la Stable API con el driver en C++, consulta la siguiente documentación de la API: