O que é uma API
Parte da seção APIs JSON do Journey de Django da Coddy. Lição 1 de 19.
As visualizações que você escreveu até agora retornam páginas para as pessoas lerem. Uma API (interface de programação de aplicações) retorna dados para programas: um aplicativo de celular, um script ou o JavaScript em uma página solicita uma URL e recebe dados em vez de HTML.
Esses dados geralmente são JSON, um texto que se parece com dicionários e listas do Python, com aspas duplas e true, false e null onde o Python tem True, False e None:
{"title": "Buy milk", "done": false, "due": null}O Django transforma um dicionário em uma resposta JSON com JsonResponse:
from django.http import JsonResponse
def hello(request):
return JsonResponse({"message": "Hi", "ready": True})Ele escreve o JSON e define o cabeçalho Content-Type como application/json. Um cabeçalho é uma linha de informação enviada com a resposta; este informa ao programa que tipo de dados ele recebeu.
Desafio
FácilAdicione o primeiro endpoint ao rastreador de tarefas:
- Uma view
statsque retorna JSON comtotal, o número de tarefas, edone, o número de tarefas concluídas. - A rota
"api/stats/", chamadastats.
Pressione Run e, em seguida, abra /api/stats/: ela exibe {"total": 3, "done": 1}.
Experimente você mesmo
from django.shortcuts import render
from .models import Task
def home(request):
return render(request, "tasks/home.html", {"tasks": Task.objects.all()})
Todas as lições de APIs JSON
2Lendo requisições
Filtrando com uma consultaCriando com POST5Projeto: Organizando o Trabalho
Projeto: PrioridadesProjeto: Limpar Tarefas ConcluídasPratique por conta própria: Playground de Django