Aqui está um exemplo de Hello World de servidor web HTTP:
const http = require('http')
const port = process.env.PORT || 3000
const server = http.createServer((req, res) => {
res.statusCode = 200
res.setHeader('Content-Type', 'text/html')
res.end('<h1>Hello, World!</h1>')
})
server.listen(port, () => {
console.log(`Server running at port ${port}`)
}) // Server running at port 3000
Vamos analisar em resumo. Nós incluimos o módulo http
.
Nós usamos o módulo para criar um server HTTP.
O server é configurado para ouvir uma porta específica, 3000
. Quando o server está pronto, a função callback listen
é chamada.
A função callback que passamos é aquela que será executada a cada solicitação recebida. Sempre que uma nova solicitação é recebida, o evento request
é chamado, fornecendo dois objetos: uma solicitação (um objeto http.IncommingMessage
) e uma resposta (um objeto http.ServerResponse
.
request
fornece os detalhes da solicitação. Por meio dele, acessamos os cabeçalhos das requisições e o dados das requisições.
response
é usado para preencher os dados que vamos retornar ao cliente.
Neste caso com:
res.statusCode = 200;
definimos a propriedade statusCode
como 200, para indicar uma resposta bem-sucedida.
Também definimos o cabeçalho Content-Type
:
res.setHeader('Content-Type', 'text/html');
e encerramos a resposta, adicionando o conteúdo como argumento para end()
:
res.end('<h1>Hello, World!</h1>');