API
Para os nossos serviços de API, escolhemos o FastAPI que é um framework para desenvolvimento de APIs em Python, criado para ser rápido, fácil de usar e de alto desempenho. Ele usa tipagem estática de variáveis (com base no Python 3.6+), o que permite uma validação mais robusta dos dados e reduz erros em tempo de execução. Além disso, ele usa a biblioteca Pydantic para serialização e desserialização de dados, o que simplifica o trabalho com dados estruturados.
Documentação automática: o FastAPI gera automaticamente documentação interativa para a sua API, com base no código que você escreve. Isso facilita a documentação da API e ajuda os desenvolvedores a usá-la.
1. Instalar o FastAPI
Abra o terminal ou prompt de comando, certifique-se de que o Python esteja instalado em seu computador. Você pode verificar digitando python no terminal. Se o Python estiver instalado, você verá a versão do Python que está sendo executada. Se o Python não estiver instalado, você precisará instalá-lo antes de prosseguir.
pip install fastapi[all]
Nota: Este comando irá instalar o FastAPI juntamente com as bibliotecas opcionais, como o uvicorn (para servidor de desenvolvimento), o aiohttp (para suporte a WebSocket) e o requests (para testes de API). Aguarde até que a instalação seja concluída. Depois que a instalação for concluída, você poderá verificar se o FastAPI foi instalado com sucesso digitando import fastapi
no terminal.
2. Testando o seu FastAPI
Este exemplo define duas rotas: uma rota raiz que retorna um JSON com a mensagem "Hello, World!" quando um método GET é chamado, e outra rota que espera um parâmetro item_id
na URL e um parâmetro opcional q
na consulta(query) da URL.
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "q": q}
Para testar a API, salve o código acima em um arquivo chamado main.py e execute-o usando o servidor Uvicorn:
$ uvicorn main:app --reload
A opção --reload
faz com que o servidor seja recarregado automaticamente sempre que o arquivo for alterado. Em seguida, abra o navegador ou uma ferramenta de teste de API, como o Postman ou Insomnia, e envie solicitações HTTP para as rotas definidas.
Para testar a rota raiz, acesse http://localhost:8000/ em um navegador ou envie uma solicitação GET usando a ferramenta de teste de API. Para testar a rota de itens, acesse http://localhost:8000/items/5?q=teste em um navegador ou envie uma solicitação GET usando a ferramenta de teste de API.
Essas solicitações devem retornar um JSON com os dados esperados para cada rota.
Nota: Lembre-se de que este é apenas um exemplo básico para fins de teste. Você pode expandir este código para criar rotas mais complexas e fornecer funcionalidades específicas em sua API.