Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/ / /

Migrar do Go HTTP Client para o Atlas Go SDK

Use este guia para migrar do cliente Go HTTP ( go-client-mongodb-atlas ) para o Atlas Go SDK ( mongodb/atlas-sdk-go ).

O comando go-client-mongodb-atlas está obsoleto e não recebe atualizações de recursos principais. É altamente recomendável migrar para o SDK do Atlas Go para as últimas alterações. Você também pode migrar parcialmente usando as duas bibliotecas ao mesmo tempo.

O Atlas Go SDK ( MongoDB/atlas-sdk-go ) é baseada na Atlas Admin API do2 V. O Atlas Go SDK simplifica a complexidade da API versionada, expondo a API versionada como métodos Go . As principais versões do SDK podem introduzir alterações significativas apenas em um pequeno subconjunto dos endpoints da API Atlas Admin.

O Atlas Go SDK não depende do obsoleto go-client-mongodb-atlas. Ele altera a forma como as solicitações da API são feitas, mas minimiza as alterações necessárias para os usuários finais.

O Atlas Go SDK tem métodos diferentes para a inicialização dos clientes:

// Surrounding code ignored for brevity
sdk, err := admin.NewClient(
// Authentication using ApiKey and ApiSecret
admin.UseDigestAuth(apiKey, apiSecret))

Observação: os documentos obsoletos go-client-mongodb-atlas e o Atlas Go SDK usam autenticação baseada em Digest. As mesmas credenciais se aplicam.

Para saber mais, consulte Autenticar usando o Atlas Go SDK.

O tratamento de erros exige que os desenvolvedores usem métodos dedicados para converter erros para objetos de erro da API:

// Surrounding code omitted for brevity
apiErr, _ := admin.AsError(err)
log.Fatalf("Error when performing SDK request: %v", apiErr.GetDetail())

Para saber mais, consulte Tratamento de erros.

O Atlas Go SDK altera a interface da API para diferenciar as APIs de outros métodos.

Cada método de API tem um sufixo de API. Por exemplo:

sdk.Projects será agora sdk.ProjectsApi

Cada método agora explica o objeto que é criado. Por exemplo:

sdk.Projects.create() se tornará sdk.ProjectsApi.createProject(...)

Para saber mais, consulte a Documentação do endpoint.

Os nomes e propriedades dos modelos são formatados no formato PascalCase para maior clareza e previsibilidade dos métodos e nomes dos campos. Por exemplo, ClusterAWSProviderSettings se tornará agora ClusterAwsProviderSettings.

O mesmo se aplica aos nomes das propriedades. Por exemplo, os campos ID se tornarão Id e etc.

O Atlas Go SDK melhora a clareza dos objetos de solicitação e resposta. Para situações em que o endpoint aceita vários formatos da carga útil ( polimorfismo ), você pode especificar instâncias dos modelos de API que deseja usar para uma solicitação específica. Por exemplo, ao criar um cluster, você pode usar um dos objetos dedicados RegiãoConfigs (AWSRegionConfig, GCPRegionConfig, etc.):

// Surrounding code omitted for brevity
RegionConfig{
// Dedicated region config for AWS cloud
AWSRegionConfig: &mongodbatlas.AWSRegionConfig{
//AWS-specific fields are here
RegionName: &regionName,
},
}

Voltar

Error Handling