DEV Community

Cover image for Como criar uma API com Node.js e MongoDB usando ES6
rodrigozan
rodrigozan

Posted on

Como criar uma API com Node.js e MongoDB usando ES6

Se você deseja criar uma API usando Node.js e MongoDB, você veio ao lugar certo. Neste artigo, vamos mostrar como criar uma API simples e eficiente usando essas tecnologias.

Configuração do ambiente

Antes de começar, você precisará instalar o Node.js e o MongoDB em seu computador. Certifique-se de que ambos estejam instalados corretamente e de que você tenha um editor de código instalado, como o Visual Studio Code.

Criação de um projeto Node.js

O próximo passo é criar um novo projeto Node.js usando o gerenciador de pacotes npm. Abra o terminal e digite o seguinte comando:

npm init 
Enter fullscreen mode Exit fullscreen mode

Isso criará um arquivo package.json que será usado para gerenciar as dependências do projeto.

Instalação das dependências

Agora que o projeto foi criado, é hora de instalar as dependências necessárias. Neste caso, precisaremos instalar o Express e o Mongoose. Abra o terminal e digite o seguinte comando:

npm install express mongoose --save 
Enter fullscreen mode Exit fullscreen mode

Isso instalará o Express e o Mongoose e os adicionará ao arquivo package.json.

Configuração do servidor

Agora, precisamos configurar o servidor Express para lidar com as solicitações HTTP. Abra o arquivo app.js e adicione o seguinte código:
javascript

const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Olá, mundo!'); }); app.listen(3000, () => { console.log('Servidor rodando na porta 3000'); }); 
Enter fullscreen mode Exit fullscreen mode

Este código configura um servidor Express básico que escuta as solicitações na porta 3000 e retorna "Olá, mundo!" quando uma solicitação é feita para a raiz do servidor.

Configuração do MongoDB

Agora, precisamos configurar o Mongoose para se conectar ao MongoDB. Abra o arquivo app.js e adicione o seguinte código:

const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/meu_banco_de_dados', { useNewUrlParser: true }); 
Enter fullscreen mode Exit fullscreen mode

Este código se conecta ao MongoDB em localhost/meu_banco_de_dados usando as opções padrão do Mongoose.

Criação do modelo

Agora, precisamos criar um modelo Mongoose para o nosso objeto de dados. Abra o arquivo app.js e adicione o seguinte código:

const mongoose = require('mongoose'); const schema = new mongoose.Schema({ nome: String, idade: Number, }); const Pessoa = mongoose.model('Pessoa', schema); 
Enter fullscreen mode Exit fullscreen mode

Este código define um modelo Pessoa que tem dois campos: nome (do tipo String) e idade (do tipo Number).

Criação das rotas

Agora, precisamos criar as rotas para nossa API. Abra o arquivo app.js e adicione o seguinte código:

const express = require('express'); const mongoose = require('mongoose'); const app = express(); mongoose.connect('mongodb://localhost/meu_banco_de_dados', { useNewUrlParser: true }); const schema = new mongoose.Schema({ nome: String, idade: Number, }); const Pessoa = mongoose.model('Pessoa', schema); // Rota para obter todas as pessoas app.get('/pessoas', async (req, res) => { const pessoas = await Pessoa.find(); res.send(pessoas); }); // Rota para obter uma pessoa pelo ID app.get('/pessoas/:id', async (req, res) => { const pessoa = await Pessoa.findById(req.params.id); res.send(pessoa); }); // Rota para adicionar uma pessoa app.post('/pessoas', async (req, res) => { const pessoa = new Pessoa({ nome: req.body.nome, idade: req.body.idade, }); await pessoa.save(); res.send(pessoa); }); // Rota para atualizar uma pessoa app.put('/pessoas/:id', async (req, res) => { const pessoa = await Pessoa.findByIdAndUpdate(req.params.id, { nome: req.body.nome, idade: req.body.idade, }, { new: true }); res.send(pessoa); }); // Rota para excluir uma pessoa app.delete('/pessoas/:id', async (req, res) => { const pessoa = await Pessoa.findByIdAndDelete(req.params.id); res.send(pessoa); }); app.listen(3000, () => { console.log('Servidor rodando na porta 3000'); }); 
Enter fullscreen mode Exit fullscreen mode

Este código define cinco rotas para nossa API: uma rota para obter todas as pessoas, uma rota para obter uma pessoa pelo ID, uma rota para adicionar uma pessoa, uma rota para atualizar uma pessoa e uma rota para excluir uma pessoa. Cada rota corresponde a uma operação CRUD básica e usa as funções do Mongoose para interagir com o MongoDB.

Conclusão

Criar uma API com Node.js e MongoDB usando ES6 é uma tarefa relativamente simples, mas pode ser um pouco complicada se você nunca trabalhou com essas tecnologias antes. Neste artigo, mostramos como configurar o ambiente de desenvolvimento, criar um projeto Node.js, instalar as dependências necessárias, configurar o servidor Express, configurar o MongoDB, criar um modelo Mongoose e criar as rotas para nossa API.

Agora que você tem uma boa compreensão de como criar uma API com Node.js e MongoDB usando ES6, pode começar a criar suas próprias APIs e explorar as muitas possibilidades que essas tecnologias oferecem. Lembre-se de sempre seguir as melhores práticas de desenvolvimento e de manter seu código limpo e organizado.

Top comments (0)