Para começar um novo projeto NodeJS, é preciso criar um início.

npm init -y

Posso criar um script de rodagem automatizada, e nomea-lo como eu queira.

"dev": "node --watch src/server.js"

Isso cria um monitoramento contínuo do código e no entanto o “server” é reiniciado a cada vez que o código é alterado. E para rodar esse script, basta:

npm run dev

Para alterar o modo como é feito a importação de modulos no código, é preciso acrescentar:

"type": "module",

Isso dentro de package.json É importante ressaltar que existe outro modo de importação, o padrão, o commonJS.

Então, para realizar uma impotação de um módulo interno, por exemplo, fazemos:

import http from 'node:http'

No caso, o pré-fixo node: serve para chamar módulo internos do próprio NodeJS.

E, quando há importação de módulos externos, esse pré-fixo não é necessário.


Existem parâmetros para a requisição (req) e para a resposta (res), no caso de uma requisição (req), podemos chamar (criar):

const method = req.method
// Assim, como também tem o parâmetro URL
const url = req.url
// Podemos criar uma abreviação, uma vez que method e URL estão
// acompanhados de req, da seguinte maneira:
const { method, url } = req

O response (res) não pode ser interpretado de maneira correta pelas engines externas quando seu tipo é um ARRAY, por exemplo, e por isso é necessário convertê-lo a um JSON, da seguinte maneira: