APIs
O que é uma API?
Uma forma bem prática para poder entender isso, é imaginar um restaurante. Nele existe o cliente, o garçom e o cozinheiro.
- O cliente chega, senta e chama o garçom;
- O garçom vem até a mesa, anota o pedido e leva ao chefe de cozinha;
- O chefe de cozinha prepara o prato (processa o pedido);
- O garçom coleta o prato pronto e leva para o cliente que pediu;
- O cliente final consome o prato preparado.
A API seria basicamente isso, um serviço que leva um dado, processa e devolve o resultado.
As páginas webs são exemplos de serviços, onde o navegador envia o pedido e o servidor devolve o código da página para que seja renderizado como imagem ao usuário.
Quais os tipos de APIs?
As APIs possuem duas modalides, estas sendo REST ou SOAP.
A tecnologia REST é mais recente e está sendo mais utilizada pelo mercado, já a SOAP foi muito utilizada por programas mais antigos (legados).
Como podemos testar uma API?
Programas
REST
SOAP
Código
requests
- Instalando a "lib" requests
http
- Importando a "lib" http.client
urllib
- Importando a "lib" urllib.request
GET
Explicação
As APIs do tipo GET são de modelagem simples, isso é, a requisição é feita somente tendo uma URL e nela podem ser passado parâmetros extras para serem efetuados filtros e ajustes no retorno devolvido por ela.
Obs.: Devido a mesma ter uma facilidade na chamada, o tipo GET pode se tornar perigoso se for necessário passar credenciais ou dados sigilosos.
Exemplo
-
Importando a "lib" requests
-
Efetuando requisição
-
Transformando o retorno em dicionário
-
Interagindo com o retorno
APIs Para Praticar
POST
Explicação
O tipo POST permite a passagem de dados/parâmetros através de um "corpo" que fica "mascarado" durante o envio e o retorno. Logo, ela tem uma base mais complexa para ser utilizada, podendo até mesmo ter autenticações baseadas em Token.
Obs.: Os "corpos" geralmente são no formato JSON.
Exemplo
-
Importando a "lib" requests e JSON
-
Gerando "corpo" da API
-
Gerando os cabeçalhos da API
-
Efetuando requisição
-
Transformando o retorno em dicionário
-
Interagindo com o retorno