Middleware
Penjelasan
Middleware Django adalah lapisan yang memproses tiap request sebelum mencapai view dan tiap response sebelum dikirim ke client — cocok untuk logging, autentikasi custom, atau menambah header. Middleware didaftarkan sebagai list di MIDDLEWARE pada settings.py, urutan dalam list menentukan urutan eksekusi.
Contoh Konsep
class LogRequestMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
print(f'Request masuk: {request.path}')
response = self.get_response(request)
return response
Praktikum
Buat middleware yang menambahkan header 'X-Powered-By: Django' ke setiap response.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Middleware custom harus didaftarkan manual di MIDDLEWARE settings.py, sedangkan middleware bawaan Django (session, auth, CSRF) sudah otomatis ada di sana saat startproject.