Tôi đang xây dựng một API RESTful đơn giản cho một ứng dụng dựa trên web mà tôi đang làm việc và tôi đang tự hỏi về cách tốt nhất để làm lộ các mô hình miền của mình.
Giả sử tôi có một lớp Người dùng và tôi muốn cung cấp phản hồi JSON với các thuộc tính người dùng khác nhau. Tôi rõ ràng không muốn công khai mọi thuộc tính của mô hình của mình (những thứ như DateCreated, PasswordHash, v.v.) do vấn đề bảo mật và băng thông.
Tôi đã đọc vào Đối tượng truyền dữ liệu và tôi tự hỏi liệu đây có phải là hướng đi hay không. Nếu tôi đúng, tôi có thể chuyển, ví dụ, mô hình Người dùng cho Người dùng DTO của tôi và đảm bảo rằng DTO chỉ cho phép hiển thị các thuộc tính Người dùng tôi chọn (điều này cũng sẽ giúp tách các mô hình của tôi khỏi API công khai của tôi).
Là giải pháp này phù hợp hoặc có cách nào tốt hơn để đi về điều này?
Cảm ơn.