3.5. Conceitos básicos de NodeJS: Rotas e manipulação de requisições

Página 8

NodeJS é uma plataforma de desenvolvimento de aplicações server-side baseada no motor JavaScript V8 do Google Chrome. Ele permite aos desenvolvedores criar servidores web rápidos e escaláveis. Uma das principais características do NodeJS é o uso do modelo de programação orientada a eventos, que é especialmente útil para aplicações que necessitam de alto I/O e baixo consumo de CPU.

Antes de mergulharmos nos conceitos de rotas e manipulação de requisições, é importante entender o que são APIs. API é a sigla para Application Programming Interface, que em tradução livre significa Interface de Programação de Aplicações. As APIs permitem a interação entre diferentes softwares de maneira fácil e segura, sendo uma forma de integrar sistemas, possibilitando benefícios como a segurança dos dados, a integração com outros sistemas e a automação de tarefas.

Rotas

No contexto de uma API, uma rota é um caminho ou uma URL onde a API pode ser acessada. Cada rota representa um recurso específico que a API expõe aos seus usuários. No NodeJS, as rotas são definidas utilizando o módulo Express, que é um framework para NodeJS que fornece funcionalidades para construção de aplicações web e APIs.

Por exemplo, um servidor web simples com duas rotas pode ser criado da seguinte maneira:

var express = require('express');
var app = express();

app.get('/', function(req, res) {
  res.send('Hello World!');
});

app.get('/api/users', function(req, res) {
  res.send('List of users');
});

app.listen(3000, function() {
  console.log('Example app listening on port 3000!');
});

No código acima, a primeira rota é a rota raiz ('/') e a segunda rota é a rota '/api/users'. A função app.get() é usada para definir as rotas. O primeiro argumento é o caminho da rota e o segundo argumento é uma função de callback que será executada quando a rota for acessada.

Manipulação de Requisições

A função de callback recebe dois argumentos: req e res. O argumento req representa a requisição que foi enviada para o servidor e o argumento res representa a resposta que o servidor enviará de volta para o cliente.

O objeto req contém informações sobre a requisição, como os parâmetros da URL, os dados enviados no corpo da requisição, os cabeçalhos da requisição, entre outras informações. O objeto res é usado para enviar a resposta para o cliente. Ele possui métodos para enviar a resposta como um arquivo, como um JSON, como texto, entre outros formatos.

Por exemplo, para enviar um JSON como resposta, você pode fazer da seguinte maneira:

app.get('/api/users', function(req, res) {
  var users = [
    { id: 1, name: 'John Doe' },
    { id: 2, name: 'Jane Doe' }
  ];

  res.json(users);
});

No código acima, quando a rota '/api/users' é acessada, o servidor retorna um JSON com uma lista de usuários.

Para manipular os dados enviados no corpo da requisição, você pode usar o middleware body-parser do Express. O body-parser extrai todo o corpo da requisição e o coloca no objeto req.body. Por exemplo:

var bodyParser = require('body-parser');

app.use(bodyParser.json());

app.post('/api/users', function(req, res) {
  var user = req.body;

  // Aqui você pode adicionar o usuário ao banco de dados

  res.json(user);
});

No código acima, quando uma requisição POST é enviada para a rota '/api/users', o servidor extrai o corpo da requisição e o retorna como resposta.

Em resumo, as rotas são os caminhos que os usuários da API podem acessar e a manipulação de requisições é a forma como o servidor lida com as requisições que são enviadas para essas rotas. Esses são conceitos fundamentais para a criação de APIs em NodeJS.

Now answer the exercise about the content:

O que é uma rota no contexto de uma API em NodeJS e como ela é definida?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

93.6. Conceitos básicos de NodeJS: Middleware e sua aplicação

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text