O que é FastAPI?
FastAPI é um framework moderno, rápido e de alto desempenho para a criação de APIs e aplicações web utilizando Python. Ele se destaca por sua facilidade de uso, suporte a tipagem e validação automática de dados, além de oferecer suporte ao padrão ASGI (Asynchronous Server Gateway Interface), o que o torna ideal para aplicativos assíncronos e de alta performance.
Ferramentas necessárias e instalação
Para usar o FastAPI, você precisará de um interpretador Python instalado em sua máquina. Caso ainda não tenha o Python, consulte Instalando Python e Criando Primeiro Programa.
Além disso, será necessário o gerenciador de pacotes pip
, que normalmente já vem instalado junto com o Python. O pip
é usado para baixar e gerenciar pacotes.
Para instalar o FastAPI, abra o terminal e execute o seguinte comando:
pip install fastapi
Instalando o servidor ASGI
O FastAPI requer um servidor compatível com o protocolo ASGI. Uma das opções mais populares é o Uvicorn, que pode ser instalado da seguinte forma:
pip install "uvicorn[standard]"
Criando a primeira aplicação FastAPI
Primeiramente, crie uma pasta no seu sistema para armazenar os arquivos do aplicativo. Por exemplo: C:\fastapi
.
Em seguida, crie um arquivo chamado main.py
dentro da pasta criada e adicione o seguinte código:
from fastapi import FastAPI
from fastapi.responses import HTMLResponse
app = FastAPI()
@app.get("/")
def read_root():
html_content = "<h1>Hello, FastAPI!</h1>"
return HTMLResponse(content=html_content)
O principal objeto do FastAPI é uma instância da classe FastAPI
, criada com o comando:
app = FastAPI()
Essa instância será usada para configurar as rotas e gerenciar o comportamento da aplicação.
Uma função para processar solicitações é definida e decorada com @app.get()
. Esse decorador vincula a função a uma rota específica da aplicação:
@app.get("/")
def read_root():
html_content = "<h1>Hello, FastAPI!</h1>"
return HTMLResponse(content=html_content)
Neste exemplo, o parâmetro "/"
no decorador indica que essa função será executada quando o cliente acessar a rota raiz (/
).
A resposta é gerada utilizando HTMLResponse
, que formata e retorna o conteúdo no formato HTML.
O nome da função read_root
é arbitrário.
Iniciando a aplicação
Para iniciar a aplicação, navegue até a pasta onde o arquivo main.py foi salvo. Em seguida, execute o seguinte comando no terminal:
uvicorn main:app --reload
Detalhes do comando:
main
: Nome do módulo que contém o objeto FastAPI.app
: Nome do objeto FastAPI criado no código (app = FastAPI()).--reload
: Configuração opcional que permite ao servidor reiniciar automaticamente ao detectar alterações no código-fonte.
Após executar o comando, o terminal exibirá o endereço onde a aplicação está sendo executada, geralmente http://127.0.0.1:8000/
.
Acesse esse endereço em seu navegador. Se tudo estiver configurado corretamente, você verá a mensagem HTML renderizada:
Documentação oficial: