REST em Python

3 – Web
3.3 – APIs
3.3.1 – REST (requests, Django REST Framework)
3.3.2 – GraphQL (Graphene)
LEGENDA
Nivel_1
Nivel_2
Nivel_3

REST é um estilo arquitetural para construir APIs web. Ele usa os verbos HTTP (GET, POST, PUT, DELETE) como ações. Primeiramente, cada recurso é identificado por uma URL única. Por exemplo, /produtos/42 acessa o produto 42. Além disso, as respostas geralmente usam o formato JSON. A voz passiva é usada aqui: “os dados são transferidos sem estado”. Isso significa que cada requisição contém toda informação necessária. Quando utilizar REST? Na maioria das aplicações web modernas. Python oferece duas ferramentas essenciais para REST. Requests para consumir APIs e Django REST Framework para criá-las. Vamos explorar ambas em detalhes práticos. Três subtítulos organizam este guia completo. Ao final, você saberá construir e consumir APIs profissionais.

Requests: consumindo apis rest com simplicidade

Requests é a biblioteca mais popular para HTTP em Python. Ela simplifica chamadas GET, POST, PUT e DELETE. Quando usar Requests? Em qualquer projeto que consuma APIs externas. Por exemplo, buscar dados de clima, cotação ou redes sociais. Primeiro, instale com pip install requests. Depois, faça chamadas com poucas linhas de código. A voz passiva é aplicada: “os parâmetros são passados como dicionário”. Exemplo completo de consumo de API REST:

Requests trata JSON, autenticação e erros de forma elegante. É a ferramenta padrão para integração com APIs REST.

Django rest framework: construindo apis profissionais

Django REST Framework (DRF) é o padrão para APIs com Django. Ele oferece serializadores, viewsets e autenticação prontos. Quando usar DRF? Em projetos Django que precisam de API robusta. Primeiro, instale com pip install djangorestframework. Adicione 'rest_framework' ao INSTALLED_APPS do Django. A voz passiva é aplicada: “os serializadores são usados para validar dados”. Exemplo completo de uma API de produtos com DRF:

Com esse código, você tem uma API completa com: Listagem, criação, atualização, remoção e autenticação. Acesse /api/produtos/ para testar no navegador. DRF também gera uma interface web para explorar a API. Isso acelera o desenvolvimento em pelo menos 70%.

Quando usar requests vs. django rest framework

Requests é para consumo de APIs de terceiros. DRF é para criação de suas próprias APIs. Portanto, as ferramentas são complementares, não concorrentes. Use Requests em scripts, bots ou integrações simples. Use DRF em sistemas web completos com Django. A fórmula de produtividade com DRF: \(P = \frac{T_{\text{manual}}}{T_{\text{DRF}}} \approx 3\) Ou seja, você é três vezes mais rápido com DRF. No entanto, DRF exige conhecimento de Django. Para APIs pequenas sem Django, prefira FastAPI ou Flask. Requests é obrigatório em qualquer ambiente Python. Ele é leve, rápido e fácil de aprender. Combine ambos quando seu Django REST Framework consumir outras APIs. Exemplo: sua API DRF pode chamar um serviço externo via Requests. A voz passiva é usada: “diferentes camadas são integradas harmoniosamente”. Portanto, domine as duas ferramentas para ser um desenvolvedor completo. Comece com Requests hoje mesmo. Avance para DRF quando precisar escalar seu projeto.

Deixe um comentário