Nesse artigo irei falar sobre uma introdução ao typeScript e criar uma API REST Express.
Para criação da API irei utilizar o Visual Studio Code (VSC) e o INSOMNIA.
Criando estrutura novo projeto
Abrir o terminal e criar uma nova pasta que será a raiz do projeto.
Iniciar o yarn para trazer mais funcionalidades e vantagens para o desenvolvimento
yarn init -y
abrir o visual studio code
code .
Instalar as dependencias do express
yarn add express
Assim que as dependencias forem instaladas irá ser criado o package.json
Criar pasta 'src' e dentro dela criar um arquivo server.ts
esse arquivo tem a extensão do typeScript o VSC já identifica esse padrão.
Abrir o arquivo server.ts
e importar o express
import express from 'express'
Adicionar biblioteca do express com dependencia de desenvolvimento
yarn add@types/express - D
Ao importar a biblioteca do express o typeScript traz tudo que tem disponivel para ser utilizado.
Necessário converter o arquivo 'server.ts' para codigo JavaScript de uma forma que o node.js consiga entender tudo aquilo que esta sendo declarado para executar o arquivo. Para fazer isso instalar com dependência de desenvolvimento
yarn add typescript -D
Inicializar o typeScript. Será criado o arquivo tsconfig.json que é um arquivo de configuração
yarn tsc --init
Converter o código para o javascript. Ao fazer isso irá criar um novo arquivo com o formado javaScript
yarn tsc
ao executar o yarn tsc
é criado um arquivo dentro da pasta local. Se tiver vários arquivos ira criar um arquivo com formato js para cada um ocasionando em confusão.
Para resolver esse problema ver o artigo que fala sobre a configuração de uma ferramenta que faça a conversão de forma automática.
Criar uma pasta chamada rotas onde iremos começar separando as rotas da aplicação.
Criar um arquivo modelo.Rotas.ts
. Importar dentro do express o Router (Router é uma interface)
import {Router} from 'express'
criar constante para rota
const rota = Router();
exportar a rota para ser acessivel dentro de outra classe
export {modeloRota}
Criar uma rota de post. Para a rota funcionar corretamente a API REST precisa que o recurso seja bem definido, e o recurso sera o modelo
. A rota vai receber as informações de dentro do request e a partir dai vai fazer o cadastro do modelo.
criar um array de modelo
const modelo = [];
usar modelo.push passando o nome e a descrição.
modelo.push({
nome,
descricao
});
dar um retorn com o status 201 informando que um objeto foi criado.
return response.status(201).send();
Abrir o arquivo server.ts
importar a rota
import { modeloRota } from './rotas/modelo.rotas';
usar o a rota
app.use(modeloRota);
Abrir o Insomnia
criar um arquivo e definir metodo criar, do tipo post, que vai receber um json e passar os dados desejados para que a aplicação receba esses valores:
O servidor do VSC precisa estar iniciado para que o insomnia retorno sucesso:
yarn dev
Se o servidor rodar com sucesso basta clicar em 'send' no insomnia e sera executado com suscesso. Assim o metodo de cadastro de modelo já esta funcionando.
Top comments (0)