Hướng Nghiệp Dữ Liệu - Software Trading Crypto, Forex, Chứng Khoán
Nghiên cứu ứng dụng công nghệ Blockchain, Tài sản mã hóa & Kinh tế số
Chưa phân loại

Tạo API đầu tiên với FastAPI & Pydantic Models

Tạo API đầu tiên với FastAPI & Pydantic Models

Trong buổi này, chúng ta bắt đầu xây dựng ứng dụng FastAPI hoàn chỉnh đầu tiên, làm quen với cách tổ chức project, khai báo metadata cho API, và chia router theo module – đúng chuẩn backend thực tế.


1️⃣ Khởi tạo ứng dụng FastAPI

Ứng dụng được khởi tạo thông qua FastAPI() với các thông tin mô tả cơ bản:

  • Title – tên API hiển thị trên Swagger UI

  • Description – mô tả mục tiêu API (sử dụng Pydantic models – Buổi 2)

  • Version – phiên bản API để quản lý nâng cấp về sau

Việc khai báo metadata giúp:

  • API trông chuyên nghiệp

  • Dễ quản lý version

  • Team frontend/tester hiểu API nhanh hơn qua /docs


2️⃣ Tổ chức code theo Router (Chuẩn backend thực tế)

Thay vì viết toàn bộ API trong một file, project được chia thành các router riêng:

  • items – xử lý nghiệp vụ liên quan đến item

  • users – xử lý nghiệp vụ người dùng

  • products – xử lý nghiệp vụ sản phẩm

Các router được gắn vào app chính thông qua include_router().

Lợi ích:

  • Code dễ đọc – dễ bảo trì

  • Module hóa rõ ràng

  • Dễ mở rộng khi hệ thống lớn dần


3️⃣ API root – kiểm tra nhanh trạng thái hệ thống

Endpoint / đóng vai trò:

  • Kiểm tra server có đang chạy hay không

  • Trả về thông tin cơ bản:

    • Thông điệp chào mừng

    • Link tài liệu /docs

    • Phiên bản API hiện tại

Đây là cách làm rất phổ biến trong các hệ thống backend thực tế.


4️⃣ Chạy ứng dụng với Uvicorn

FastAPI sử dụng Uvicorn – ASGI server hiệu năng cao.

Lưu ý quan trọng:

  • Khi chạy bằng lệnh:

    uvicorn app.main:app --reload

    → Tự reload khi code thay đổi (phù hợp dev).

  • Khi chạy file trực tiếp:

    • Không nên bật reload=True

    • Dễ gây lỗi hoặc chạy không ổn định

Giúp học viên hiểu đúng cách dev FastAPI chuẩn.


5️⃣ Kết quả đạt được sau Buổi 2

Sau buổi học này, học viên sẽ:

  • Hiểu cách khởi tạo FastAPI App chuẩn

  • Biết cách chia router theo module

  • Sử dụng thành thạo Swagger UI

  • Chạy FastAPI đúng cách với Uvicorn

  • Sẵn sàng cho các buổi tiếp theo:

    • Pydantic schema chi tiết

    • CRUD + Database

    • Auth & phân quyền


👉 Nếu anh muốn, mình có thể viết tiếp:

  • Buổi 3: CRUD + Pydantic Schema chuẩn doanh nghiệp

  • Buổi 4: Kết nối Database (PostgreSQL)

  • Buổi 5: Auth, JWT & phân quyền

Chỉ cần nói tiếp buổi mấy, mình làm trọn bộ cho anh luôn 💪

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

📊 Check Giá Crypto