FastApi APIRouter, Membangun Microservice Dengan FastAPI

Subscribe Dengan Account Google Untuk Membaca Artikel Tanpa Iklan
FastApi APIRouter, Membangun Microservice Dengan FastAPI

Pada tutorial sebelumnya kita telah belajar FastApi framework, kita telah membuat project hello wolrd dan juga cara menginstall serta menjalankan FastApi.

Sebagaimana yang kita tau, ketika kita membangun sebuah layanan microservice ada hal penting yang perlu dari awal kita pikirkan yaitu ApiRouter.

Router berisi path-path url yang menghubungkan pengguna microservice ke fungsi dan class utama dari project yang kita buat.

Di tutorial ini kita akan membahas bagaimana caranya mengkonfigurasi ApiRouter di FastApi Framework.

Berikut ini susunan direktori project yang akan kita buat:

example fastapi project example fastapi project

Dari gambar diatas kita punya 3 direktori utama yaitu: api, core, dan schemas


  • api, direktori ini akan berisi semua hal tentang routing dan juga controller yang akan mengatur semua class dan fungsi terkait microservice.

  • core, direktori ini berisi terkait configurasi, sekuriti dan juga kumpulan library lainya .

  • schemas, direktori ini berisi tentang struktur request dan response json dari layanan microservice yang kita buat.


Ada baiknya kita langsung ke studi kasus, buat sebuah file dengan nama config.py dan simpan di direktori core. Perhatikan kode berikut ini:

from pydantic import AnyHttpUrl, BaseSettings

class Settings(BaseSettings):
API_V1_STR: str = "/api/v1"
SERVER_HOST: AnyHttpUrl = "http://localhost"

class Config:
case_sensitive = True

settings = Settings()

Agar lebih fokus yuks ikuti tutorial lengkapnya di video tutorial berikut ini:

Github: https://github.com/halovina/fa-example

Baca artikel lainya:


  1. Hello world, membangun microservice dengan FastAPI

  2. Mini Wallet Bagian 1 - Django Template dan Static File

  3. Mini Wallet Bagian 2 - Django Template Base HTML

  4. Mini Wallet Bagian 3 - Dajngo Model dan Koneksi Database MySQL

  5. Tutorial bassic Mysql bagian 1 - Create Read Update Delete

  6. Tutorial bassic Mysql bagian 2 - Inner, Left, Right, Cross Join

  7. Tutorial bassic Mysql bagian 3 - Filtering Data

  8. Tutorial bassic Mysql bagian 4 - Grouping Data 

  9. Tutorial bassic Mysql bagian 5 - Operator dan Clausa

  10. Tutorial bassic Mysql bagian 6 - Replace Statement

  11. Tutorial bassic Mysql bagian 7 - Constraint Data

  12. Tutorial bassic Mysql bagian 8 - Mengubah Struktur tabel

  13. Tutorial bassic Mysql bagian 9 - Subquery

  14. Tutorial bassic Mysql bagian 10 - Virtual Tabel

  15. Tutorial bassic Mysql bagian 11 - Control Flow Function

  16. Membuat service OTP bagian 1 - OTP dan PIN

  17. Membuat service OTP bagian 2 - Sequence Diagram

  18. Membuat service OTP bagian 3 - Model dan Serializer

  19. Membuat  service OTP bagian 4 - Validate OTP

  20. Membuat  service OTP bagian 5 - Api Client Service

  21. Membuat service user login bagian 1 - Konfigurasi Database

  22. Membuat service user login bagian 2 - Serializer dan JWT

  23. Membuat CRUD service product bagian 1 - Models Product

  24. Membuat CRUD service product bagian 2 - Function Serializer

  25. Membuat CRUD service product bagian 3 - Api Client Service

  26. Membaut CRUD service product bagian 4 - Auth User

  27. Membuat CRUD service product bagian 5 - TDR File Log

  28. Membuat CRUD service product bagian 6 - Unit Test

  29. Membuat service user register bagian 1 - Django

  30. Membuat Service user register bagian 2 - Django

  31. Membuat service filter dan download file CSV di django

  32. Django upload file menggunakan FileSystemStorage