Menu
CoddyTech

Che cos’è un’API

Fa parte della sezione API JSON del percorso Django di Coddy. Lezione 1 di 19.

Le viste che hai scritto finora restituiscono pagine da leggere. Un'API (interfaccia di programmazione delle applicazioni) restituisce dati destinati ai programmi: un'app per il telefono, uno script o il JavaScript di una pagina richiedono un URL e ricevono dati invece di HTML.

Questi dati sono di solito JSON, testo simile ai dizionari e alle liste Python, con virgolette doppie e true, false e null al posto di True, False e None in Python:

{"title": "Buy milk", "done": false, "due": null}

Django trasforma un dizionario in una risposta JSON con JsonResponse:

from django.http import JsonResponse


def hello(request):
    return JsonResponse({"message": "Hi", "ready": True})

Scrive il JSON e imposta l'intestazione Content-Type su application/json. Un'intestazione è una riga di informazioni inviata insieme alla risposta; questa indica al programma che tipo di dati ha ricevuto.

challenge icon

Sfida

Facile

Fornisci al tracker delle attività il suo primo endpoint:

  • Una vista stats che restituisce JSON con total, il numero di attività, e done, il numero di attività completate.
  • La route "api/stats/", denominata stats.

Premi Run, poi apri /api/stats/: mostra {"total": 3, "done": 1}.

Provalo tu

from django.shortcuts import render

from .models import Task


def home(request):
    return render(request, "tasks/home.html", {"tasks": Task.objects.all()})

Tutte le lezioni di API JSON

Esercitati da solo: Playground Django