Conteúdo do Curso
Node.js Express: API & CLI Apps
2. Aplicações de Console
4. Desenvolver API REST
Node.js Express: API & CLI Apps
Implementando a rota "OBTER TODAS AS PUBLICAÇÕES"
Vamos explorar como implementar a rota "OBTER TODAS AS PUBLICAÇÕES" no arquivo postsRoutes.js
. Esta rota recupera uma lista de todas as publicações da fonte de dados (database/posts.json
) e as envia como resposta ao cliente.
Importando Módulos e Dependências Necessários
No início do arquivo, importamos os módulos e dependências necessários:
express
: Importamos o framework Express para construir nossas rotas.fs/promises
: Este módulo oferece operações de arquivo assíncronas, que utilizaremos para ler dados de um arquivo JSON.validatePostData
: Embora não seja usado nesta rota, importamos o middlewarevalidatePostData
, que será útil para validação de dados em capítulos posteriores.
Inicializando um Roteador Express
Inicializamos uma instância de um roteador Express, que irá gerenciar todas as rotas definidas dentro deste arquivo:
Criando uma Função para Ler Dados
Definimos uma função assíncrona chamada readData para ler dados de um arquivo JSON. Esta função garante que os dados sejam recuperados corretamente e lida com erros:
fs.readFile
: Usamosfs.readFile
para ler o conteúdo do arquivo./database/posts.json
.JSON.parse
: Os dados recuperados do arquivo são analisados para um objeto JavaScript.- Tratamento de Erros: Se ocorrer algum erro durante o processo de leitura ou análise, ele é capturado e o erro é lançado.
Definindo a Rota "OBTER TODAS AS POSTAGENS"
Aqui está como definimos a rota "OBTER TODAS AS POSTAGENS" dentro do roteador:
Definição da Rota: Especificamos que esta rota lida com solicitações HTTP GET para o caminho raiz (/
).
Manipulador da Rota: Dentro da função manipuladora da rota:
- Chamamos a função
readData
para recuperar a lista de postagens do arquivo JSON. - Se a recuperação dos dados for bem-sucedida, enviamos os dados recuperados como resposta usando
res.send(data)
. - Se ocorrer algum erro durante esse processo, capturamos o erro, registramos no console para depuração (
console.error(error.message)
) e continuamos.
Código completo do arquivo postsRoutes.js nesta etapa
Tudo estava claro?
Conteúdo do Curso
Node.js Express: API & CLI Apps
2. Aplicações de Console
4. Desenvolver API REST
Node.js Express: API & CLI Apps
Implementando a rota "OBTER TODAS AS PUBLICAÇÕES"
Vamos explorar como implementar a rota "OBTER TODAS AS PUBLICAÇÕES" no arquivo postsRoutes.js
. Esta rota recupera uma lista de todas as publicações da fonte de dados (database/posts.json
) e as envia como resposta ao cliente.
Importando Módulos e Dependências Necessários
No início do arquivo, importamos os módulos e dependências necessários:
express
: Importamos o framework Express para construir nossas rotas.fs/promises
: Este módulo oferece operações de arquivo assíncronas, que utilizaremos para ler dados de um arquivo JSON.validatePostData
: Embora não seja usado nesta rota, importamos o middlewarevalidatePostData
, que será útil para validação de dados em capítulos posteriores.
Inicializando um Roteador Express
Inicializamos uma instância de um roteador Express, que irá gerenciar todas as rotas definidas dentro deste arquivo:
Criando uma Função para Ler Dados
Definimos uma função assíncrona chamada readData para ler dados de um arquivo JSON. Esta função garante que os dados sejam recuperados corretamente e lida com erros:
fs.readFile
: Usamosfs.readFile
para ler o conteúdo do arquivo./database/posts.json
.JSON.parse
: Os dados recuperados do arquivo são analisados para um objeto JavaScript.- Tratamento de Erros: Se ocorrer algum erro durante o processo de leitura ou análise, ele é capturado e o erro é lançado.
Definindo a Rota "OBTER TODAS AS POSTAGENS"
Aqui está como definimos a rota "OBTER TODAS AS POSTAGENS" dentro do roteador:
Definição da Rota: Especificamos que esta rota lida com solicitações HTTP GET para o caminho raiz (/
).
Manipulador da Rota: Dentro da função manipuladora da rota:
- Chamamos a função
readData
para recuperar a lista de postagens do arquivo JSON. - Se a recuperação dos dados for bem-sucedida, enviamos os dados recuperados como resposta usando
res.send(data)
. - Se ocorrer algum erro durante esse processo, capturamos o erro, registramos no console para depuração (
console.error(error.message)
) e continuamos.
Código completo do arquivo postsRoutes.js nesta etapa
Tudo estava claro?