Imagem do artigo Criando um servidor básico com NodeJS: Manipulando dados e retornando respostas

5.7. Criando um servidor básico com NodeJS: Manipulando dados e retornando respostas

Página 38 | Ouça em áudio

Na seção 5.7 do nosso curso, vamos abordar um tópico crucial para qualquer desenvolvedor que deseja criar APIs em NodeJS: Como criar um servidor básico, manipular dados e retornar respostas. Vamos apresentar uma abordagem passo a passo para que você possa entender completamente o processo.

Criando um servidor básico com NodeJS

Para começar, precisamos criar um servidor básico. O NodeJS possui um módulo integrado chamado 'http' que nos permite fazer isso. Primeiro, crie um novo arquivo JavaScript e adicione o seguinte código:


const http = require('http');

const server = http.createServer((req, res) => {
  // Manipulação de dados e retorno de respostas aqui
});

server.listen(3000, () => {
  console.log('Servidor rodando na porta 3000');
});

Neste código, estamos importando o módulo 'http' e usando seu método 'createServer' para criar um novo servidor. O método 'createServer' recebe uma função de callback que é chamada sempre que uma solicitação é feita ao servidor. Esta função de callback recebe dois argumentos: um objeto de solicitação (req) e um objeto de resposta (res).

Manipulando dados

Agora que temos nosso servidor básico, precisamos aprender a manipular dados. Os dados de entrada geralmente vêm na forma de solicitações HTTP. Essas solicitações podem conter vários tipos de dados, incluindo parâmetros de URL, dados de formulário e JSON.

Para acessar os dados de uma solicitação, podemos usar o objeto 'req'. Por exemplo, podemos obter os parâmetros de URL da seguinte forma:


const url = require('url');

const server = http.createServer((req, res) => {
  const query = url.parse(req.url, true).query;
  console.log(query);
});

Neste exemplo, estamos importando o módulo 'url' e usando seu método 'parse' para analisar a URL da solicitação. O segundo argumento 'true' indica que queremos que os parâmetros de URL sejam analisados ​​como um objeto.

Retornando respostas

Depois de manipular os dados, precisamos retornar uma resposta para o cliente. Para fazer isso, podemos usar o objeto 'res'. Este objeto possui vários métodos que nos permitem enviar uma resposta de volta ao cliente.

Por exemplo, podemos enviar uma resposta de texto simples da seguinte forma:


const server = http.createServer((req, res) => {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Olá, mundo!');
});

Neste exemplo, estamos usando o método 'writeHead' para definir o código de status HTTP e os cabeçalhos da resposta. Em seguida, estamos usando o método 'end' para enviar a resposta e encerrar a conexão.

Conclusão

Criar um servidor básico, manipular dados e retornar respostas são habilidades fundamentais para qualquer desenvolvedor que deseja criar APIs em NodeJS. Embora este seja apenas um exemplo básico, ele fornece uma base sólida para começar a construir APIs mais complexas.

Na próxima seção do nosso curso, vamos explorar como criar rotas, como lidar com diferentes tipos de solicitações HTTP e como trabalhar com bancos de dados. Fique ligado e continue aprendendo!

Agora responda o exercício sobre o conteúdo:

Qual é o propósito do método 'createServer' no módulo 'http' do NodeJS?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Criando um servidor básico com NodeJS: Utilizando bibliotecas/frameworks para facilitar o desenvolvimento de APIs

Próxima página do Ebook Gratuito:

39Criando um servidor básico com NodeJS: Utilizando bibliotecas/frameworks para facilitar o desenvolvimento de APIs

4 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto