Skip to content

api.conan1.com

Một Cloudflare Worker duy nhất, đứng trước Cloudflare D1, phục vụ mọi ứng dụng nội bộ của Conan. Frontend không bao giờ truy cập D1 trực tiếp.

Trình duyệt ──▶ Cloudflare Access ──▶ compass.conan1.com (Pages)
                                            │  fetch(credentials: 'include')

                       Cloudflare Access ──▶ api.conan1.com (Worker)


                                       D1: conan-compass

Công nghệ

Thành phầnLựa chọn
RuntimeCloudflare Workers
RouterHono
DatabaseCloudflare D1 (SQLite)
Truy vấnSQL thuần với prepared statement
Xác thựcCloudflare Access JWT

Không dùng ORM. Schema nhỏ và ổn định, SQL thuần dễ đọc và dễ soi khi có sự cố hơn một lớp trừu tượng.

Quy ước

  • Mọi endpoint nghiệp vụ nằm dưới /v1/.
  • /health là endpoint duy nhất không cần xác thực.
  • Lỗi trả về { "error": "..." } kèm mã HTTP đúng nghĩa.
  • Ghi dữ liệu luôn tạo một dòng trong audit_log.

CORS

Biến ALLOWED_ORIGINS trong wrangler.jsonc liệt kê các origin được phép, phân tách bằng dấu phẩy. Request gửi kèm cookie nên origin phải khớp chính xác — không dùng *.