API Nedir
Coddy'nin Django Journey'sinin JSON API'leri bölümünün bir parçası. Ders 1 / 19.
Şimdiye kadar yazdığın görünümler, insanların okuyabileceği sayfalar döndürür. Bir API (uygulama programlama arayüzü), programlar için veri döndürür. Bir telefon uygulaması, bir betik veya sayfadaki JavaScript bir URL ister ve HTML yerine veri alır.
Bu veri genellikle JSON olur; çift tırnaklar ve Python'da True, False ve None yerine true, false ve null kullanılan, Python sözlüklerine ve listelerine benzeyen metindir:
{"title": "Buy milk", "done": false, "due": null}Django, JsonResponse ile bir sözlüğü JSON yanıtına dönüştürür:
from django.http import JsonResponse
def hello(request):
return JsonResponse({"message": "Hi", "ready": True})JSON'ı yazar ve Content-Type üstbilgisini application/json olarak ayarlar. Üstbilgi, yanıtla birlikte gönderilen bir bilgi satırıdır; bu üstbilgi, programa aldığı verinin türünü bildirir.
Görev
KolayGörev takip uygulamasına ilk uç noktasını ekle: bir sayfa yerine sayılarla yanıt veren bir URL.
tasks/views.pyiçinde,django.httpiçindenJsonResponseiçe aktar ve JSON ile yanıt veren birstatsgörünümü ekle:total, görevlerin sayısı;doneise tamamlanan görevlerin sayısıdır.tasks/urls.pyiçinde,"api/stats/"yolunustatsadıyla ekle.
“Oyna” düğmesine bas: önizleme /api/stats/ adresini açar ve {"total": 3, "done": 1} değerini gösterir.
Kendin dene
from django.shortcuts import render
from .models import Task
def home(request):
return render(request, "tasks/home.html", {"tasks": Task.objects.all()})
JSON API'leri bölümündeki tüm dersler
Kendi başına pratik yap: Django playground