Study
FastAPI

Dependency Injection dengan Depends()

Penjelasan

Depends() adalah sistem dependency injection FastAPI — kamu tulis fungsi biasa, lalu deklarasikan sebagai parameter path operation dengan Depends(fungsi). FastAPI otomatis memanggil fungsi itu tiap request dan menyuntikkan hasilnya, cocok untuk logic berulang seperti koneksi database atau pagination default.

Contoh Konsep

from fastapi import Depends

def common_params(skip: int = 0, limit: int = 10):
    return {'skip': skip, 'limit': limit}

@app.get('/catatan')
def list_catatan(params: dict = Depends(common_params)):
    return params

Praktikum

Buat dependency common_params(skip, limit) dan pakai di endpoint GET '/catatan' lewat Depends().

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Depends() bisa dipakai berlapis (dependency yang bergantung pada dependency lain) — FastAPI otomatis meresolusi seluruh rantainya, dan hasil dependency yang sama dalam satu request bisa di-cache lewat use_cache.