Integrando MongoDB com Node.js PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Integrando MongoDB com Node.js

Um aplicativo robusto moderno tem um meio de armazenamento de dados em seu backend, como o aplicativo Node, que é capaz de trabalhar tanto com não relacionais (como PostgresQL, MongoDB) quanto relacionais (como MySQL, Oracle).

MongoDB é um banco de dados não relacional relativamente fácil de usar e poderoso, e se você é um desenvolvedor Node.js que deseja aprender os benefícios que ele traz e como começar a criar uma integração segura com seu aplicativo Node, este é o guia para você!

Neste artigo, aprenderemos como integrar/conectar-se ao MongoDB; um banco de dados não relacional muito popular com Node.js e veja como podemos usá-lo em aplicativos Node.

Observação: Para acompanhar, você precisará instalar o Node.js. Você pode baixar a versão estável mais longa (LTS) e instalar em sua máquina local a partir de seu Página oficial de download.

Breves informações sobre MongoDB

MongoDB é o banco de dados baseado em documentos mais popular e avançado, onde todos os dados são armazenados em JSON binário (JavaScript Object Notation) conhecido como BSON. Um BSON é um documento, sem necessidade de um esquema de dados predefinido. Ele permite que dados que são frequentemente acessados ​​em conjunto por uma aplicação sejam armazenados no mesmo local e torna a leitura do banco de dados fácil e rápida.

Ao contrário das tabelas relacionais, as coleções são independentes, o que torna muito mais fácil trabalhar com elas. Quando um novo documento é criado em uma coleção MongoDB, um ID é atribuído a ele para torná-lo exclusivo para aquela coleção e, dentro do documento, vários campos podem ser definidos; onde o valor pode ser uma variante de tipos de dados que variam de matrizes, strings, inteiros, objetos e assim por diante.

Para manipular dados, a API de consulta é útil para executar as operações básicas de criação, leitura, atualização e exclusão (CRUD) no banco de dados. Índices secundários também podem ser criados para garantir a otimização e tornar as consultas comuns extremamente rápidas. Também são suportadas consultas geoespaciais, que permitem encontrar documentos em uma localização geográfica específica.

Introdução ao MongoDB

Antes de começarmos a conectar-se ao MongoDB a partir de um aplicativo Node, acesse o site oficial do MongoDB para se inscrever no Try Free botão (se você ainda não possui uma conta):

Depois de criar sua conta, clique no botão Build a Database botão e clique para criar um banco de dados:

Integrando MongoDB com Node.js PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Em seguida, crie um Cluster Compartilhado (é gratuito para sempre!) e dê a ele um nome de sua escolha.

O Cluster Compartilhado é ideal para fazer experiências em uma sandbox limitada. Você pode atualizar para um cluster de produção a qualquer momento.

Integrando MongoDB com Node.js PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Depois de criar um cluster com sucesso, clique no botão Connect botão para se conectar ao Cluster:

Integrando MongoDB com Node.js PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Agora são mostradas quatro maneiras diferentes de como se conectar ao MongoDB, mas como desejamos nos conectar a um aplicativo Node, vamos escolher a opção Connect your application opção:

Integrando MongoDB com Node.js PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Você será solicitado a escolher um método de conexão. Aqui, certifique-se de selecionar Node.js como seu driver e escolha uma versão apropriada (estou usando 4.1 ou posterior enquanto escrevo este artigo).

Também é mostrada uma string de conexão que é útil para conectar nosso cluster MongoDB a um aplicativo Node:

Integrando MongoDB com Node.js PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Agora, precisamos criar um aplicativo Node.js para conectar-se ao banco de dados MongoDB.

Construindo o aplicativo Node

No diretório de sua preferência para este projeto, crie uma nova pasta:

$ mkdir integrating-mongodb-node

Então corra npm init no terminal, para inicializar uma aplicação Node com um package.json arquivo que nos permite rastrear dependências de aplicativos:

$ npm init

package name: (codes) integrating-mongodb-node
version: (1.0.0)
description: learning how to connect mongodb to a node app
entry point: (server.js)
test command:
git repository:
keywords:
author:
Is this OK? (yes) yes

Confira nosso guia prático e prático para aprender Git, com práticas recomendadas, padrões aceitos pelo setor e folha de dicas incluída. Pare de pesquisar comandos Git no Google e realmente aprender -lo!

Agora que inicializamos com sucesso package.json, vamos instalar dois pacotes que serão úteis na construção de nosso servidor. O primeiro é o Express.js, que é um framework web para desenvolvimento rápido e fácil de aplicações Node:

$ yarn add express -D

O segundo pacote que instalaríamos é o pacote Mongoose, que nos ajudaria a construir o esquema apropriado para nosso banco de dados no aplicativo Node:

$ yarn add mongoose -D

Com as dependências de desenvolvimento necessárias agora instaladas com sucesso, podemos escrever código para conectar nosso banco de dados MongoDB ao nosso aplicativo Node.

No diretório que acabamos de criar para o projeto, crie um server.js lima

$ touch server.js

A seguir, definimos a configuração básica para o aplicativo Node em server.js, criando um servidor expresso simples.



const express = require("express");
const mongoose = require("mongoose");
const app = express();

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

Podemos confirmar se nosso servidor está funcionando como deveria, executando o seguinte código no terminal.

$ node server.js

O que deve resultar em:

Server started at port 8000

Agora, você pode voltar ao painel do MongoDB para copiar o URI (Uniform Resource Idenfier) ​​para conectar o aplicativo Node ao banco de dados.

I server.js crie uma variável para armazenar o identificador uniforme de recursos e substitua no URI com a senha da sua conta MongoDB.



const express = require("express");
const mongoose = require("mongoose");
const app = express();

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

A seguir, criamos uma função assíncrona para nos permitir conectar ao MongoDB, porque não sabemos quanto tempo pode levar para a função ser concluída antes de nos conectarmos ao banco de dados:

const express = require("express");
const mongoose = require("mongoose");
const app = express();

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";
async function connect() {
  try {
    await mongoose.connect(uri);
    console.log("Connected to MongoDB");
  } catch (error) {
    console.log(error);
  }
}
connect();

const port = 8000;
app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

Criamos uma função assíncrona que registra um Connected to MongoDB mensagem quando uma conexão foi estabelecida com sucesso entre o MongoDB e o aplicativo Node e registra quaisquer erros se ocorrer um erro.

Agora devemos reiniciar o servidor:

$ node server.js

E receba uma mensagem de sucesso informando que uma conexão segura foi estabelecida entre o banco de dados MongoDB e o aplicativo Node:

Server started at port 8000
Connected to MongoDB

Neste ponto, ao retornar ao painel do cluster do projeto, você verá informações que mostram que houve uma conexão com o banco de dados recentemente:

Integrando MongoDB com Node.js PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Tudo bem pessoal, é isso! Integramos com sucesso um banco de dados MongoDB em um aplicativo Node.js.

Conclusão

Neste artigo, aprendemos como criar uma conexão segura entre um aplicativo Node.js e um banco de dados MongoDB. Agora, você pode fazer o mesmo facilmente quando precisar construir um aplicativo usando MongoDB; um banco de dados não relacional muito popular no ecossistema.

Não se esqueça que o Documentação do MongoDB é seu melhor amigo para aprender sobre o MongoDB e para saber mais sobre a construção de aplicativos Express, entre em contato com o Documentação Expressa demasiado.

Se você ficar preso ao seguir o tutorial, sinta-se à vontade para pensar no repositório do GitHub para o projeto para encontrar o seu caminho.

Recursos adicionais

Carimbo de hora:

Mais de Abuso de pilha