🚀 Capítulo 12: Postman e Insomnia: Investigando APIs (Tema: Sherlock Holmes)
NOTE
Este capítulo utiliza a temática de Sherlock Holmes para explicar o Postman e o Insomnia. Envie pistas para o servidor e analise as respostas para descobrir se o sistema está funcionando corretamente!
1. 🎯 Objetivo da Aula
Compreender o que são as ferramentas de teste de API (Postman e Insomnia), para que servem e como elas ajudam os desenvolvedores de backend a investigarem se o sistema está funcionando antes mesmo de a interface visual (frontend) estar pronta.
2. 🏢 O Cenário Prático (Seu Desafio)
O detetive Sherlock Holmes recebe um bilhete misterioso. Para desvendar o caso, ele precisa analisar a caligrafia, o tipo de papel e a mensagem codificada. Ele então envia uma resposta e fica esperando para ver qual será a reação do suspeito.
No desenvolvimento de software, quando estamos construindo o Backend (a parte do servidor que processa as regras de negócio), nós criamos as chamadas APIs (portas de comunicação).
- O Frontend (o aplicativo do celular) envia uma mensagem para a API perguntando: “Qual o saldo do cliente?“.
- A API do Backend consulta o banco de dados e responde: “O saldo é R$ 100”.
Mas e se o aplicativo do celular ainda não foi construído? Como o programador de backend sabe se a sua API está funcionando? Ele age como o Sherlock Holmes! Ele usa o Postman ou o Insomnia! Essas ferramentas servem para enviar mensagens de teste direto para a API e ver o que ela responde. Seu desafio é ser o detetive das APIs!
🧠 Fundamentos: A Teoria Traduzida
O Postman e o Insomnia são chamados de Clientes HTTP. Eles simulam o que o seu navegador de internet ou o seu aplicativo fazem por baixo dos panos.
✉️ Os Métodos de Envio (Os Verbos HTTP):
Quando você vai enviar uma mensagem para a API no Postman, você precisa escolher um “verbo” que diz o que você quer fazer:
- GET: Você quer buscar uma informação. (Ex: Buscar os dados de um usuário).
- POST: Você quer enviar ou criar algo novo. (Ex: Cadastrar um novo usuário).
- PUT: Você quer atualizar algo que já existe. (Ex: Mudar o endereço do usuário).
- DELETE: Você quer apagar algo. (Ex: Excluir a conta do usuário).
🔢 Os Códigos de Resposta (Status Codes):
Depois que você envia a mensagem, o servidor responde com um código numérico. Sherlock Holmes precisa saber o que eles significam:
- 200 (OK): Sucesso! O servidor entendeu e deu a resposta certa.
- 404 (Not Found): Erro! Você tentou acessar uma porta ou um dado que não existe.
- 500 (Internal Server Error): Erro grave! O código do backend deu algum bug e quebrou o servidor.
4. 📖 Exemplo Guiado: O Formato JSON
As mensagens que enviamos e recebemos no Postman não usam textos normais. Elas usam um padrão universal chamado JSON (JavaScript Object Notation). Ele se parece com isso:
{
"nome": "Sherlock Holmes",
"profissao": "Detetive",
"endereco": "Baker Street, 221B"
}É uma forma simples e organizada de estruturar dados para que qualquer linguagem de programação consiga entender!
5. 🛠️ Prática Obrigatória 1: Escolhendo o Verbo
Qual método HTTP (GET, POST, PUT ou DELETE) você usaria no Postman para testar as seguintes situações?
- Você quer testar a rota que apaga a foto de perfil do usuário.
- Você quer testar a rota que traz a lista de todos os produtos cadastrados na loja.
- Você quer testar a rota que recebe os dados de um novo cliente e salva no banco de dados.
6. 🛠️ Prática Obrigatória 2: Decifrando o Erro
- Você enviou uma requisição no Postman para a API de login e o servidor respondeu com o código 500. O que isso significa? O erro foi do Postman ou o programador do backend precisa corrigir um bug no código dele?
7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
- Faça o Commit: No GitHub Desktop, digite a mensagem (ex:
Finaliza Capítulo 12 GuiaFerramentas) e clique em Commit to main. - Envie para a Nuvem (Push): Clique em Push origin.
8. 📂 Estrutura de Pastas
extra_guia_de_ferramentas/
├── capitulos/
│ ├── capitulo_12_postman.md
│ └── codigos/
│ └── cap12/
│ └── requisicao.json💡 Checkpoint de Lógica
O Postman é mais pesado e cheio de recursos (permite criar testes automáticos de API). O Insomnia é mais leve, rápido e focado apenas no envio das mensagens. Ambos são excelentes e fazem a mesma coisa básica!
10. 🔥 Desafio de Fixação
Pesquise o que significa a sigla API (Application Programming Interface).
🔑 Gabarito de Código/Fórmulas
Gabarito da Prática 1:
- DELETE.
- GET.
- POST. Gabarito da Prática 2:
- Significa erro interno do servidor (Internal Server Error). O erro foi no código do backend! O programador de backend precisa abrir o código dele, olhar as linhas e corrigir o bug que fez o sistema travar.