Crie um servidor Web HTTP em Node.js: tutorial com exemplo de código

A estrutura Node.js é usada principalmente para criar aplicativos baseados em servidor. A estrutura pode ser facilmente usada para criar servidores web que podem servir conteúdo aos usuários.

Existem vários módulos, como o módulo “http” e “request”, que auxilia no processamento de solicitações relacionadas ao servidor no espaço do servidor web. Veremos como podemos criar um aplicativo básico de servidor web usando Nó js.

Nó como servidor web usando HTTP

Vejamos um exemplo de como criar e executar nosso primeiro aplicativo Node js.

Nosso aplicativo criará um módulo de servidor simples que escutará na porta nº 7000. Se uma solicitação for feita através do navegador nesta porta nº, o aplicativo do servidor enviará uma resposta 'Hello World' ao cliente.

Nó como servidor Web usando HTTP

Explicação do código

  1. A funcionalidade básica da função require é que ela lê um JavaScript arquivo, executa o arquivo e, em seguida, retorna o objeto de exportação. Portanto, no nosso caso, como queremos utilizar a funcionalidade do módulo http, utilizamos a função require para obter as funções desejadas do módulo http para que ele possa ser utilizado em nossa aplicação.
  2. Nesta linha de código, estamos criando um aplicativo de servidor baseado em uma função simples. Esta função é chamada sempre que uma solicitação é feita ao nosso aplicativo de servidor.
  3. Quando uma solicitação é recebida, estamos dizendo para enviar uma resposta com um tipo de cabeçalho '200'. Este número é a resposta normal enviada em um cabeçalho http quando uma resposta bem-sucedida é enviada ao cliente.
  4. Na própria resposta, estamos enviando a string 'Hello World'.
  5. Em seguida, estamos usando a função server.listen para fazer nosso aplicativo de servidor ouvir solicitações de clientes na porta 7000. Você pode especificar qualquer porta disponível aqui.

Se o comando for executado com sucesso, a seguinte saída será mostrada quando você executar seu código no navegador.

saída

Nó como servidor Web usando HTTP

Da saída,

  • Você pode ver claramente que se navegarmos até a URL do localhost na porta 7000, você verá a string ‘Hello World’ exibida na página.
  • Como em nosso código mencionamos especificamente que o servidor escuta na porta 7000, podemos visualizar a saída ao navegar para este URL.

Aqui está o código para sua referência

var http=require('http')
var server=http.createServer((function(request,response)
{
	response.writeHead(200,
	{"Content-Type" : "text/plain"});
	response.end("Hello World\n");
}));
server.listen(7000);

Tratamento de solicitações GET em Node.js

Fazer uma solicitação GET para obter os dados de outro site é relativamente simples em Node.js. Para fazer uma solicitação Get no nó, precisamos primeiro ter o módulo de solicitação instalado. Isso pode ser feito executando a seguinte linha na linha de comando

solicitação de instalação npm

O comando acima solicita que o gerenciador de pacotes Node baixe os módulos de solicitação necessários e os instale de acordo.

Quando o seu módulo npm for instalado com sucesso, a linha de comando mostrará o nome e a versão do módulo instalado: @ .

Manipulando Solicitações GET

No instantâneo acima, você pode ver que o módulo ‘request’ junto com o número de versão 2.67.0 foi baixado e instalado.

Agora vamos ver o código que pode fazer uso deste comando 'solicitação'.

Manipulando Solicitações GET

Explicação do código

  1. Estamos usando o módulo 'request' que foi instalado na última etapa. Este módulo possui as funções necessárias que podem ser utilizadas para fazer solicitações GET a sites.
  2. Estamos fazendo uma solicitação GET para www.google.com e posteriormente chamando uma função quando uma resposta for recebida. Quando uma resposta é recebida, os parâmetros (erro, resposta e corpo) terão os seguintes valores
    1. Erro – Caso haja algum erro recebido ao utilizar a solicitação GET, ele será registrado aqui.
    2. Resposta- A resposta terá os cabeçalhos http que são enviados de volta na resposta.
    3. Corpo- O corpo conterá todo o conteúdo da resposta enviada pelo Google.
  3. Neste, estamos apenas gravando o conteúdo recebido no parâmetro body no arquivo console.log. Então, basicamente, tudo o que ganhamos indo para www.google.com será gravado no console.log.

Aqui está o código para sua referência

var request = require("request");
	request("http://www.google.com",function(error,response,body)
	{
		console.log(body);
	});

Resumo

  • A estrutura Node.js pode ser usada para desenvolver servidores web usando o módulo 'http'. O aplicativo pode ser feito para escutar em uma porta específica e enviar uma resposta ao cliente sempre que uma solicitação for feita ao aplicativo.
  • O módulo 'solicitação' pode ser usado para obter informações de sites. As informações conteriam todo o conteúdo da página solicitada ao site relevante.