Por que FastAPI?

Introdução ao FastAPI

Matt Eckerle

Software and Data Engineering Leader

O que é FastAPI?

Vamos começar com alguma terminologia

  1. API: Application Programming Interface — apps web que usam HTTP para transmitir dados estruturados
  2. Aplicativo Web: aplicativo que atende tráfego pela web
  3. Framework Web: framework que ajuda a criar aplicativos web

FastAPI é uma forma rápida de criar APIs de alta performance com Python

Introdução ao FastAPI

Principais recursos do FastAPI

  • Rápido: Desempenho muito alto
  • "Low code" e fácil de aprender: Anotações e type hints do Python
  • Robusto: Pronto para produção, com autodoc
  • Baseado em padrões: Baseado em OpenAPI e JSON Schema

Logo do FastAPI

Logo do OpenAPI

Logo do JSON

1 https://fastapi.tiangolo.com/
Introdução ao FastAPI

FastAPI vs. outros frameworks web em Python

Flask

  • Criar apps web (GUI)
  • ORM opcional

FastAPI

  • Criar APIs
  • ORM opcional

Django

  • Criar apps web (GUI)
  • ORM integrado

Principais diferenças

  • Para APIs sem operações de banco de dados
  • Transações de dados e de machine learning
Introdução ao FastAPI

Criando nosso primeiro aplicativo web com FastAPI

1. Instale o FastAPI

pip install fastapi

2. Crie seu app em main.py

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello World"}

3. Execute o servidor

fastapi dev main.py

REPL mostrando o FastAPI em execução

Introdução ao FastAPI

Antes de praticarmos com FastAPI

Algumas observações

  1. Não dá para rodar o servidor FastAPI com o botão "Run this code"
  2. Em vez disso, defina o código do servidor no editor Python como main.py

  3. Rode pelo terminal com fastapi dev main.py

  4. Verifique se os logs no terminal mostram Application startup complete.
  5. Pare o servidor com Control + C no mesmo terminal
  6. Instale o FastAPI no seu próprio ambiente Python para praticar lá também
Introdução ao FastAPI

Vamos praticar!

Introdução ao FastAPI

Preparing Video For Download...