Menu
CoddyTech

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.

challenge icon

Görev

Kolay

Görev takip uygulamasına ilk uç noktasını ekle: bir sayfa yerine sayılarla yanıt veren bir URL.

  1. tasks/views.py içinde, django.http içinden JsonResponse içe aktar ve JSON ile yanıt veren bir stats görünümü ekle: total, görevlerin sayısı; done ise tamamlanan görevlerin sayısıdır.
  2. tasks/urls.py içinde, "api/stats/" yolunu stats adı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