🚀 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?

  1. Você quer testar a rota que apaga a foto de perfil do usuário.
  2. Você quer testar a rota que traz a lista de todos os produtos cadastrados na loja.
  3. 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

  1. 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)

  1. Faça o Commit: No GitHub Desktop, digite a mensagem (ex: Finaliza Capítulo 12 GuiaFerramentas) e clique em Commit to main.
  2. 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:

  1. DELETE.
  2. GET.
  3. POST. Gabarito da Prática 2:
  4. 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.

Capitulo Anterior | Proximo Capitulo