Menu Docs

Página inicial do DocsDesenvolver aplicaçõesDrivers PythonPyMongo

Stable API

Nesta página

  • Visão geral
  • Habilitar a stable API
  • Configurar a stable API
  • Solução de problemas
  • Campo 'apiVersion' não reconhecido no servidor
  • Fornecido apiStrict:true, mas a contagem de comando não está na versão da API
  • Documentação da API

Observação

O recurso API estável requer MongoDB Server 5.0 ou posterior.

Neste guia, você pode aprender como especificar a compatibilidade de stable API ao se conectar a uma implementação do MongoDB .

O recurso de stable API força o servidor a executar operações com comportamentos compatíveis com a versão de API que você especificar. Quando você atualiza seu driver ou servidor, a versão da API muda, o que pode alterar a forma como essas operações se comportam. O uso da stable API garante respostas consistentes do servidor e fornece estabilidade de API a longo prazo para seu aplicativo.

As seções a seguir descrevem como você pode habilitar e personalizar stable API para seu cliente MongoDB . Para obter mais informações sobre a stable API, incluindo uma lista dos comandos suportados, consultestable API no manual do MongoDB Server .

Para habilitar a stable API, execute as seguintes etapas:

  1. Construa um objeto ServerApi e especifique uma versão de stable API . Você deve usar uma versão de stable API definida no enum ServerApiVersion.

  2. Construa um objeto MongoClient , passando seu objeto ServerApi para o argumento server_api .

O seguinte exemplo de código mostra como especificar stable API a versão 1:

from pymongo import MongoClient
from pymongo.server_api import ServerApi
client = MongoClient("mongodb://<username>:<password>@<hostname:<port>",
server_api=ServerApi("1"))

Depois de criar uma instância do MongoClient com uma versão de API especificada, todos os comandos que você executa com o cliente utilizam a versão especificada. Se você precisar executar comandos usando mais de uma versão da stable API, crie um novo MongoClient.

A tabela seguinte descreve os parâmetros da classe ServerApi . Você pode usar esses parâmetros para personalizar o comportamento da stable API.

Nome da opção
Descrição
estrito
Optional. When True, if you call a command that isn't part of the declared API version, the driver raises an exception.

Default: False
deprecation_errors
Optional. When True, if you call a command that is deprecated in the declared API version, the driver raises an exception.

Default: False

O seguinte exemplo de código mostra como você pode utilizar estes parâmetros ao construir um objeto ServerApi :

from pymongo import MongoClient
from pymongo.server_api import ServerApi
client = MongoClient("mongodb://<username>:<password>@<hostname:<port>",
server_api=ServerApi("1",
strict=True,
deprecation_errors=True))

PyMongo levanta essa exceção se você especificar uma versão da API e se conectar a um servidor MongoDB que não seja compatível com a Stable API. Certifique-se de que está se conectando a uma implantação executando o MongoDB Server v5.0 ou posterior.

PyMongo levanta esta exceção se o seu MongoClient executar uma operação que não esteja na versão da stable API que você especificou. Para evitar esse erro, use uma operação alternativa compatível com a versão da stable API especificada ou defina a opção strict como False ao construir seu objeto ServerApi.

Para obter mais informações sobre como usar a stable API com o PyMongo, consulte a seguinte documentação da API :

← Personalizar seleção de servidor MongoDB