Aula 09 - Ferramentas de API (Postman / Insomnia) 📡
!!! tip "Objetivo" Objetivo: Dominar o uso de clients HTTP para testar e documentar APIs, entender os métodos HTTP e interpretar os principais códigos de status retornados pelo servidor.
1. O que são Clients de API? 🕵️♂️
Quando desenvolvemos o backend (o "servidor"), muitas vezes ainda não temos o frontend (a "tela"). Para testar se o servidor está respondendo corretamente, usamos ferramentas que simulam requisições de um navegador ou aplicativo.
🏆 Líderes de Mercado
=== "Postman" A plataforma mais consolidada no mercado. É ideal para APIs maduras que necessitam de Workspaces compartilhados, Mocks e automação completa de coleções (com relatórios).
=== "Insomnia" Foca no minimalismo, velocidade e segurança local. Por não sobrecarregar as abas com dezenas de features, é a escolha preferida de novos devs e projetos ágeis.
2. O Protocolo HTTP na Prática 🔄
Para conversar com uma API, precisamos seguir as regras do protocolo HTTP.
Métodos (Verbos) HTTP
- GET: Buscar informações (ex: listar produtos).
- POST: Criar algo novo (ex: cadastrar usuário).
- PUT: Atualizar algo existente (ex: mudar senha).
- DELETE: Remover algo (ex: excluir conta).
Status Codes (Retorno do Servidor)
- 200 OK: Deu tudo certo!
- 201 Created: Criado com sucesso.
- 400 Bad Request: Você enviou algo errado.
- 401 Unauthorized: Você não está logado.
- 404 Not Found: Não encontrei o que você pediu.
- 500 Internal Server Error: O servidor "quebrou" (erro do programador).
3. Fluxo de uma Requisição (Mermaid)
sequenceDiagram
participant Dev as Postman/Insomnia
participant API as Servidor API
participant DB as Banco de Dados
Dev->>API: POST /usuarios (Dados do Usuário)
API->>DB: Salva no Banco
DB-->>API: Confirmado
API-->>Dev: 201 Created (JSON com ID)
4. Praticando no Terminal 💻
Embora o Postman seja visual, as APIs também podem ser testadas via terminal usando o comando curl:
$ curl -X GET https://jsonplaceholder.typicode.com/users/1
{
"id": 1,
"name": "Leanne Graham",
"username": "Bret",
"email": "Sincere@april.biz"
}
5. Mini-Projeto: Minha Primeira Collection 🚀
Sua missão é testar uma API pública e organizar os resultados:
- Baixe e instale o Postman ou o Insomnia.
- Crie uma nova Collection chamada "Teste Local".
- Crie uma requisição GET para:
https://jsonplaceholder.typicode.com/posts. - Verifique o Status Code. Foi 200?
- Desafio: Tente fazer um POST para a mesma URL enviando um JSON com
titleebody.
6. Exercício de Fixação 📝
- Básico: Qual a vantagem de usar o Postman em vez de apenas o navegador para testar uma API?
- Básico: O que significa um erro da família 4xx (ex: 404)?
- Intermediário: Em qual situação usaríamos o método PUT em vez de POST?
- Intermediário: O que é o "Body" de uma requisição e em quais métodos ele é mais comum?
- Desafio: Pesquise o que é uma Variável de Ambiente no Postman e por que ela é útil para alternar entre "Ambiente de Teste" e "Ambiente de Produção".
Próxima Aula: Vamos deixar nosso código impecável com os Linters e Formatadores (ESLint/Prettier)! ✨