Menu
CoddyTech

Czym jest API

Część sekcji API JSON ścieżki Django w Coddy. Lekcja 1 z 19.

Widoki, które do tej pory napisano, zwracają strony do czytania. API (interfejs programowania aplikacji) zwraca dane dla programów: aplikacja na telefon, skrypt lub JavaScript na stronie wysyła żądanie do URL-a i otrzymuje dane zamiast HTML-a.

Te dane to zwykle JSON — tekst przypominający słowniki i listy Pythona, z podwójnymi cudzysłowami oraz true, false i null tam, gdzie Python ma True, False i None:

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

Django zamienia słownik na odpowiedź JSON za pomocą JsonResponse:

from django.http import JsonResponse


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

Wysyła JSON i ustawia nagłówek Content-Type na application/json. Nagłówek to wiersz informacji wysyłany wraz z odpowiedzią; ten informuje program, jakiego rodzaju dane otrzymał.

challenge icon

Wyzwanie

Łatwy

Dodaj do śledzenia zadań pierwszy endpoint:

  • Widok stats, który zwraca JSON z polami total, czyli liczbą zadań, oraz done, czyli liczbą ukończonych zadań.
  • Trasę "api/stats/" o nazwie stats.

Naciśnij Run, a następnie otwórz /api/stats/: zobaczysz {"total": 3, "done": 1}.

Spróbuj swoich sił

from django.shortcuts import render

from .models import Task


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

Wszystkie lekcje w sekcji API JSON

Poćwicz samodzielnie: Edytor online Django