EventoObtenha 50% de desconto no seu ingresso para MongoDB.local Londres em outubro 2. Use o código WEB50Saiba mais >>
Desenvolvedor MongoDB
Central de desenvolvedor do MongoDBchevron-right
Idiomaschevron-right
JavaScriptchevron-right

Conecte-se a um MongoDB database usando Node.js

Lauren Schaefer5 min read • Published Feb 04, 2022 • Updated Nov 29, 2023
Node.jsJavaScript
Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Início rápido
star-empty
star-empty
star-empty
star-empty
star-empty
Logotipo do Início rápido em Node.js
Usa Node.js? Quer aprender MongoDB? Esta série de blogs é para você!
Nesta série de Início rápido, mostrarei os fundamentos de como começar a usar o MongoDB com o Node.js. Na publicação de hoje, vamos abordar como se conectar a um MongoDB database a partir de um script Node.js, recuperando uma lista de bancos de dados e imprimindo os resultados em seu console.
Esta publicação usa o MongoDB 4.4, Driver MongoDB Node.js 3.6.4 e Node.js 14.15.4.
Clique aqui para ver uma versão anterior desta publicação que usa o MongoDB 4.0, Driver MongoDB Node.js 3.3.2 e Node.js 10.16.3.
Prefere aprender por vídeo? Podemos ajudar você. Confira o vídeo abaixo que mostra como se conectar e como realizar as operações CRUD.

configurar

Antes de começarmos, precisamos garantir que você tenha concluído algumas etapas de pré-requisito.

Instalar o Node.js

Primeiro, verifique se você tem uma versão compatível do Node.js instalada. A versão atual do MongoDB Node.js Driver requer Node 4.x ou superior. Para esses exemplos, usei Node.js 14.15.4. Consulte os documentos de compatibilidade do MongoDB para obter mais informações sobre qual versão do Node.js é necessária para cada versão do driver do Node.js.

Instale o driver Node.js do MongoDB

O driver Node.js do MongoDB permite que você interaja facilmente com MongoDB databases dentro de aplicativos Node.js. Você precisará do driver para se conectar ao seu banco de dados e executar as queries descritas nesta série de Início rápido.
Se você não tiver o driver Node.js do MongoDB instalado, poderá instalá-lo com o seguinte comando.
No momento em que este artigo foi escrito, essa versão instalada 3.6.4 do driver. A execução do npm list mongodb exibirá o número da versão do driver atualmente instalado. Para obter mais detalhes sobre o driver e a instalação, consulte a documentação oficial.

Crie um MongoDB Atlas cluster gratuito e carregue os dados de amostra

Agora, você precisará de um MongoDB database. A maneira mais fácil de começar a usar o MongoDB é por meio do Atlas, o banco de dados como serviço totalmente gerenciado do MongoDB.
Vá para o Atlas e crie um novo cluster na camada gratuita. Em um nível alto, um cluster é um conjunto de nós onde as cópias do banco de dados serão armazenadas. Depois que a camada for criada, carregue os dados de exemplo. Se você não estiver familiarizado com a criação de um novo cluster e com o carregamento de dados de exemplo, confira este tutorial em vídeo do MongoDB Developer Advocate Maxime Beugnet.
Comece hoje mesmo com um cluster M0 no Atlas. É gratuito para sempre e é a maneira mais fácil de experimentar as etapas desta série de blogs.

Obtenha as informações de conexão do cluster

A etapa final é preparar seu cluster para conexão.
No Atlas, navegue até seu cluster e clique em CONNECT. O Assistente de conexão do cluster será exibido.
O assistente solicitará que você adicione seu endereço IP atual à lista de acesso IP e crie um usuário MongoDB, caso ainda não o tenha feito. Certifique-se de anotar o nome de usuário e a senha que você usa para o novo usuário do MongoDB, pois precisará deles em uma etapa posterior.
Em seguida, o assistente solicitará que você escolha um método de conexão. Selecione Conectar sua aplicação. Quando o assistente solicitar que você selecione a versão do driver, selecione Node.js e 3.6 ou posterior. Copie a string de conexão fornecida.
Para mais detalhes sobre como acessar o Assistente de Conexão e concluir os passos descritos acima, consulte a documentação oficial.

Conecte-se ao seu banco de dados de um aplicativo Node.js

Agora que tudo está configurado, é hora de programar! Vamos escrever um script Node.js que se conecta ao seu banco de dados e lista os bancos de dados em seu cluster.

Importar MongoClient

O módulo MongoDB exporta MongoClient e é isso que usaremos para nos conectarmos a um MongoDB database. Podemos usar uma instância do MongoClient para nos conectarmos a um cluster, acessar o banco de dados dele e fechar a conexão com ele.

Criar nossa função principal

Vamos criar uma função assíncrona chamada main() na qual nos conectaremos ao cluster do MongoDB, chamaremos funções que consultam nosso banco de dados e nos desconectaremos do nosso cluster.
A primeira coisa que precisamos fazer dentro de main() é criar uma constante para o nosso URI de conexão. O URI de conexão é a string de conexão que você copiou no Atlas na seção anterior. Ao colar a string de conexão, não se esqueça de atualizar <username> e <password> para que sejam as credenciais do usuário que você criou na seção anterior. A string de conexão inclui um placeholder <dbname>. Para estes exemplos, usaremos o banco de dados sample_airbnb, portanto, substitua <dbname> por sample_airbnb.
Observação: o nome de usuário e a senha fornecidos na string de conexão NÃO são os mesmos das credenciais do Atlas.
Agora que temos nosso URI, podemos criar uma instância do MongoClient.
Observação: ao executar esse código, você poderá ver DeprecationWarnings em torno da string de URL parser e do mecanismo Server Discover and Monitoring. Se você vir esses avisos, poderá removê-los passando opções para o MongoClient. Por exemplo, você poderia instanciar o MongoClient chamando new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true }). Consulte a documentação da API do driver MongoDB Node.js para obter mais informações sobre essas opções.
Agora estamos prontos para usar o MongoClient para conectar ao nosso cluster. client.connect() retornará uma promessa. Usaremos a palavra-chave await quando chamarmos client.connect() para indicar que devemos bloquear a execução adicional até que a operação seja concluída.
Agora podemos interagir com nosso banco de dados. Vamos construir uma função que imprima os nomes dos bancos de dados neste cluster. Muitas vezes, é útil conter essa lógica em funções bem nomeadas para melhorar a legibilidade de sua base de código. Ao longo desta série, criaremos novas funções semelhantes à função que estamos criando aqui à medida que aprendermos a escrever diferentes tipos de queries. Por enquanto, vamos chamar uma função chamada listDatabases().
Vamos envolver nossas chamadas para funções que interagem com o banco de dados em uma declaração try/catch para lidarmos com quaisquer erros inesperados.
Queremos ter certeza de que fechamos a conexão com nosso cluster, portanto, terminaremos nosso try/catch com uma declaração final.
Quando tivermos escrito nossa função main(), precisamos chamá-la. Vamos enviar os erros para o console.
Juntando tudo, nossa função main() e nossa chamada para ela serão parecidas com a seguinte.

Listar os bancos de dados em nosso cluster

Na seção anterior, fizemos referência à função listDatabases(). Vamos implementá-la!
Essa função recuperará uma lista de bancos de dados em nosso cluster e imprimirá os resultados no console.

Salvar seu arquivo

Você já implementado bastante código. Salve suas alterações e nomeie seu arquivo como connection.js. Para ver uma cópia do arquivo completo, visite o repositório GitHub nodejs-quickstart.

Executar seu script Node.js

Agora você está pronto para testar seu código! Execute seu script executando um comando como este em seu terminal: node connection.js
Você verá uma saída como a seguinte:

O que vem a seguir?

Hoje, você conseguiu se conectar a um MongoDB database a partir de um script Node.js, recuperar uma lista de bancos de dados em seu cluster e visualizar os resultados no console. Legal!
Agora que você está conectado ao seu banco de dados, continue com a próxima publicação desta série, na qual você aprenderá a executar cada uma das operações CRUD (criar, ler, atualizar e excluir, em português).
Enquanto isso, consulte os seguintes recursos:
Questões? Comentários? Queremos muito nos conectar com você. Participe da conversa nos fóruns da MongoDB Community.

Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Início rápido
star-empty
star-empty
star-empty
star-empty
star-empty
Relacionado
Tutorial

Combinando seu banco de dados com o armazenamento de blog do Azure usando o Data Federation


Aug 29, 2024 | 7 min read
Tutorial

Segurança de tipo com Prisma e MongoDB


Aug 09, 2024 | 4 min read
Tutorial

Desenvolver um sistema de gerenciamento de estoque usando MongoDB Atlas


Aug 05, 2024 | 16 min read
Tutorial

Vamos dar ao seu aplicativo Web Ionic baseado em Realm um tratamento nativo no iOS e Android!


Jul 12, 2024 | 7 min read
Sumário