Docs Menu
Docs Home
/ /

Stable API

Nota

La función API estable requiere MongoDB Server 5.0 o posterior.

En esta guía, puedes aprender a especificar la compatibilidad de la API estable al conectarse a una implementación de MongoDB.

La función API estable obliga al servidor a ejecutar operaciones con comportamientos compatibles con la versión de API que especifique. Al actualizar el controlador o el servidor, la versión de API cambia, lo que puede modificar el comportamiento de estas operaciones. El uso de la API estable garantiza respuestas consistentes del servidor y proporciona estabilidad de API a largo plazo para su aplicación.

Las siguientes secciones describen cómo habilitar y personalizar la API estable para su cliente MongoDB. Para obtener más información sobre la API estable, incluyendo una lista de los comandos que admite, consulte API estable en el manual del servidor MongoDB.

Para habilitar la API estable, realice los siguientes pasos:

  1. Construir una mongocxx::options::server_api Objeto y especifique una versión estable de la API. Debe usar una versión estable de la API definida en la enumeración mongocxx::options::server_api::version. Actualmente, el controlador solo admite la versión 1 (k_version_1).

  2. Construya un objeto mongocxx::options::client. Establezca el campo server_api_opts de este objeto en el objeto server_api que creó en el paso anterior.

  3. Construya un objeto mongocxx::client, pasando su objeto mongocxx::uri y el objeto mongocxx::options::client que creó en el paso anterior.

El siguiente ejemplo de código muestra cómo especificar la versión de API estable 1:

#include <mongocxx/instance.hpp>
#include <mongocxx/uri.hpp>
#include <mongocxx/client.hpp>
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 crear una instancia mongocxx::client con una versión de API específica, todos los comandos que ejecute con el cliente usarán dicha versión. Si necesita ejecutar comandos con más de una versión de la API estable, cree una nueva instancia mongocxx::client.

La siguiente tabla describe las propiedades de la clase server_api_options. Puede usar estas propiedades para personalizar el comportamiento de la API estable.

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 deprecación

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 puede utilizar estos parámetros al construir un objeto ServerApi:

#include <mongocxx/instance.hpp>
#include <mongocxx/uri.hpp>
#include <mongocxx/client.hpp>
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);
}

Para obtener más información sobre el uso de la API estable con el controlador C++, consulte la siguiente documentación de la API:

Volver

Comprimir el tráfico de la red

En esta página