Appearance
Skill / /express-service-patterns
/express-service-patterns
Quy ước viết backend Express legacy — controller/service, response envelope, xử lý lỗi bất đồng bộ.
Cách gọi
text
/express-service-patternsKhi nào dùng
Khi viết hoặc sửa code backend Express kiểu cũ. Cần cài đặt trước bằng lệnh cài skill coding, xem Chọn workflow.
Cách hoạt động
- Skill hướng dẫn tách controller và service: controller chỉ giải mã request rồi giao cho service, không tự chạy truy vấn hay quy tắc nghiệp vụ, và mọi handler bọc trong try/catch, chuyển lỗi bắt được sang cho middleware xử lý lỗi thay vì tự trả response.
- Skill mô tả cách truy cập dữ liệu qua một registry tổng hợp một lần, thay vì mỗi service tự
requireclient kết nối riêng — đổi hoặc mock client về sau chỉ cần sửa một chỗ. - Skill mô tả một helper envelope duy nhất cho mọi response thành công, vì lớp trung gian phía frontend chỉ nhận diện đúng shape đó — một controller gọi thẳng cách trả response khác sẽ tạo ra một shape mà frontend không nhận ra.
- Skill nêu thứ tự đăng ký middleware là ranh giới phân quyền thật sự trong một app không dùng decorator guard: một route đăng ký trước middleware xác thực sẽ chạy mà không có thông tin người dùng.
- Skill nhắc cách xử lý lỗi bất đồng bộ: một throw bên trong handler
asynckhông tự động tới middleware xử lý lỗi như throw đồng bộ — cách xử lý ở đây là try/catch kỷ luật trong từng handler, kết thúc bằng chuyển lỗi cho middleware.
Lưu ý
Phần model Mongoose phía sau registry truy cập dữ liệu ở trên thuộc về skill mongoose-modeling; bẫy tenant-scoping và truy cập trực tiếp bỏ qua schema trên cùng collection thuộc về mongo-data-safety.