Nota
La función API estable requiere MongoDB Server 5.0 o posterior.
Utilice la función API estable solo si todos los servidores MongoDB a los que se conecta admiten esta función.
Overview
En esta guía, puedes aprender a especificar la compatibilidad con Stable API al conectar una instancia o un set de réplicas de MongoDB.
La funcionalidad de Stable API obliga al servidor a ejecutar operaciones con comportamientos compatibles con la versión de la API que se especifique. Una versión de API define el comportamiento esperado de las operaciones que cubre y el formato de las respuestas del servidor. Las operaciones y las respuestas del servidor pueden variar según la versión de la API que especifique.
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.
Para aprender más sobre los comandos que cubre el servidor, Stable API.
Especificar una versión de API
La Client Opcionalmente toma un tipo ServerAPIOptions a través del ClientOptions.
Para especificar una versión de API, añade el método SetServerAPIOptions() junto con tus opciones de API del servidor a tu ClientOptions. Después de especificar una versión de API, el Client ejecuta operaciones compatibles con la versión de API durante toda su conexión.
Nota
El controlador de MongoDB Go actualmente solo admite ServerAPIVersion1.
Ejemplo
El siguiente ejemplo instancia un Client que establece la versión Stable API y se conecta a un servidor.
// Specify a server URI to connect to uri := "mongodb://<hostname>:<port>" // Specify the Stable API version in the ClientOptions object serverAPI := options.ServerAPI(options.ServerAPIVersion1) // Pass in the URI and the ClientOptions to the Client client, err := mongo.Connect(options.Client().ApplyURI(uri).SetServerAPIOptions(serverAPI)) if err != nil { panic(err) }
Modificar comportamiento
Puedes modificar aún más el comportamiento de la funcionalidad estable de la API agregando al tipo ServerAPIOptions. Si no especificas ninguna opción, el driver utiliza los valores por defecto para cada opción.
Método | Descripción |
|---|---|
| The API version to use. Default: ServerAPIVersion1 |
| Flag that indicates whether the server should return errors for features that aren't part of the API version. Default: false |
| Flag that indicates whether the server should return errors for deprecated features. Default: false |
Ejemplo
Este ejemplo especifica que el servidor debe realizar las siguientes acciones:
Utilice la versión 1 de la API
Devuelve errores para funciones que no forman parte de la versión 1
Devolver errores para funciones obsoletas
// Specify a server URI to connect to uri := "mongodb://<hostname>:<port>" // Specify the Stable API version and append options in the ClientOptions object serverAPI := options.ServerAPI(options.ServerAPIVersion1).SetStrict(true).SetDeprecationErrors(true) // Pass in the URI and the ClientOptions to the Client client, err := mongo.Connect(options.Client().ApplyURI(uri).SetServerAPIOptions(serverAPI)) if err != nil { panic(err) }
Información Adicional
Para obtener más información sobre cómo conectarse a su instancia o set de réplicas de MongoDB, consulte el Guía para elegir un objetivo de conexión.
Documentación de la API
Para obtener más información sobre las opciones de esta sección, consulte la siguiente documentación de API: