Citely Docs
Nhà phát triển

Trạng thái bất đồng bộ (building → live)

Cách CPP mô hình hoá site tĩnh — nhận bài, build, rồi mới hiển thị.

Site động (db) publish xong là live ngay. Site tĩnh (fs-build) thì bản chất bất đồng bộ: nhận bài → ghi file → CI/build (30–90s) → mới hiển thị. CPP mô hình hoá điều này bằng một field status + một flag async, không phân mảnh.

Ba trạng thái, một mô hình

db adapter    POST → 200 { status: "live" }        (xong, hiển thị ngay)
fs-build      POST → 202 { status: "building" }     (đã nhận, đang build)

                 └─ Citely POLL `url` (HEAD) tới khi 200 → tự chuyển "live".
                    Site KHÔNG cần làm gì thêm.

Mặc định — Citely poll (site không làm gì)

  1. Receiver ghi bài → trả 202 { id, url, status: "building" }.
  2. Citely lưu một delivery record (permalink + trạng thái building).
  3. Citely định kỳ GET url (HEAD/GET). Khi trả 200 → chuyển record sang live.
  4. UI Citely hiện "Đang build → Đã xuất bản".

Đây là đường khuyến nghị: site tĩnh tối thiểu chỉ cần trả 202 rồi mặc kệ. Poll là cách DUY NHẤT đang khả dụng hôm nay — receiver không cần expose thêm endpoint nào.

Vì sao không dùng trạng thái đồng bộ "giả"

Có thể trả 200 {url} ngay và coi như xong. Nhưng URL đó có thể 404 vài chục giây tới khi build xong → user bấm vào thấy lỗi, và Citely index sớm một URL chưa tồn tại. 202 building

  • theo dõi là trung thực hơn: Citely chỉ báo "đã xuất bản" khi bài thật sự sống, và chỉ ping Google index khi live.

Callback tức thì (site gọi Citely khi build xong) là kế hoạch tương lai, chưa triển khai — endpoint POST /api/connect/live chưa tồn tại. Hiện tại chỉ dùng đường poll ở trên.

On this page