Nhật ký công việc cho nhiệm vụ "Tổ chức tích hợp frontend mới với backend MODX hiện có"
Dự án này là một cơ hội tuyệt vời để gợi lại những kỹ năng cũ và vui mừng khi thấy một số thứ đã được thiết kế tiện lợi như thế nào từ thời đó :-)
Tôi xin nhắc lại rằng các công cụ hữu ích chính từng được sử dụng trên trang web khi đó và sẽ giúp ích cho chúng ta là console, modxSite và modxSmarty.
Tại sao và bằng cách nào chúng lại giúp ích? Đã được viết tại đây.
Và ngay lúc này, tôi đang kiểm chứng điều đó trong thực tế.
Đầu tiên là việc tạo yêu cầu cấp thẻ ra vào và lấy dữ liệu này. Ở đây, công lớn thuộc về modxSite vì nó cho phép tạo các bộ xử lý (processors) riêng để làm việc với dữ liệu, đi kèm quyền truy cập API có sẵn ngay từ đầu. Thế là trong tài khoản cá nhân ở phía frontend, tôi mở devTools và xem yêu cầu tạo:

Ở đây tôi thấy bộ xử lý nào đang được gọi — passes/visitors/create — và dữ liệu nào đang được truyền đi. Tức là ta đã có thể ném cái này vào Postman hoặc công cụ tương tự để thực hiện các truy vấn.
Nhưng lúc này chúng ta sử dụng thêm một công cụ nữa — console. Và mặc dù tôi đã không viết gì ở đó trong nhiều năm qua, tôi thậm chí còn chẳng phải viết lại gì cả. Nó có tính năng xuất và nhập mã, và ở đây tôi chỉ việc chọn từ danh sách đoạn mã gỡ lỗi đã lưu trước đó. Thế là xong. Có thể chạy trực tiếp ngay trong trang quản trị MODX :-)

Ưu điểm của cách tiếp cận này là logic hoàn toàn tách biệt với giao diện trình bày. Nghĩa là ở đây chúng ta chỉ thao tác với các yêu cầu API, truyền dữ liệu thô và nhận lại dữ liệu thô. Sau đó, chúng ta muốn định dạng phản hồi theo cách nào tùy ý. Trước đây, phản hồi này được xử lý bởi một ứng dụng JavaScript trên trang web MODX, nhưng bây giờ nó sẽ được xử lý trên trang web mới của chúng ta với các công nghệ hoàn toàn mới. Và chúng ta sẽ không cần phải chỉnh sửa bất cứ thứ gì trong MODX cả. Trang web mới chỉ đơn giản là cần biết phải gửi yêu cầu API đi đâu là đủ.
Xác định và triển khai lớp tương tác an toàn giữa frontend mới với dữ liệu và các chức năng của MODX.