Google có bản trình diễn thể hiện phương pháp này mà bạn đang đề cập đến. Đó là Autoshoppe Demo cho Google App Engine. Mặc dù là Java, các khái niệm cũng áp dụng cho các ứng dụng .NET.
Ứng dụng chứa các trang HTML thuần tuý có các phần mở rộng .html. Không có công nghệ xem phía máy chủ nào làm phức tạp cuộc sống của lập trình viên HTML. Các trang HTML sử dụng JavaScript AJAX để tương tác với các Dịch vụ Web REST được xây dựng bằng cách sử dụng Spring 3.0, tương tác với một kho dữ liệu.
- Dữ liệu yêu cầu được thông qua như là JSON trong yêu cầu
- Các dữ liệu đáp ứng được trả về như JSON trong các phản ứng.
Điều này có nghĩa là bất kỳ ai cũng có thể xây dựng giao diện người dùng trên API này hoặc bạn có thể tạo dự án .NET tương tác với dữ liệu đó. REST là một kiến trúc tuyệt vời để tạo các dịch vụ mở rộng, nhiều lớp. Tôi nghĩ rằng lý do kỹ thuật này không được sử dụng rộng rãi là bởi vì nhiều người bị mắc kẹt trên công nghệ xem khuyến khích các nhà phát triển sử dụng đánh dấu của nhà cung cấp công nghệ xem trong HTML, chẳng hạn như các tệp ASP (hoặc JSP cho Java). Đó là một thực tế đã được khoảng một thời gian bởi vì về cơ bản các nhà văn của các khuôn khổ này là các kỹ sư, không phải nhà thiết kế web và thiết kế giao diện người dùng.
Nó cũng có một sự hiểu biết khá mạnh mẽ về REST để xem những lợi thế mà phương pháp này cung cấp, và các nhà phát triển trẻ đôi khi đấu tranh với những khái niệm này.
Nếu bạn giải quyết vấn đề này trong .NET, sử dụng bản demo AutoShoppe làm hướng dẫn, bạn có thể muốn sử dụng trình ánh xạ đối tượng có thể chuyển đổi JSON của bạn thành đối tượng .NET và quay lại JSON. Đây là một cách tiếp cận rõ ràng hơn nhiều so với việc tự phân tích cú pháp JSON.
Ưu điểm của phương pháp RESTful này là nội dung, hành vi và bản trình bày của bạn hoàn toàn tách biệt 100% đến mức bạn có thể cho lập trình viên web các tệp HTML và họ có thể chạy chúng hoàn toàn bên ngoài. Môi trường NET. Sau đó, các nhà thiết kế của bạn có thể sử dụng các công cụ và tập trung vào các điểm mạnh của họ, không bao giờ phải cài đặt, cấu hình hoặc chạy Visual Studio.NET. Trên thực tế, các tệp sẽ chạy ngay từ màn hình.
EDIT: Có lẽ bất lợi là không có nhiều hỗ trợ cho điều này trong nhiều khung MVC, chủ yếu là vì nó là một khái niệm mới. Cầu nối giữa phía máy khách và phía máy chủ hiện tại phải được viết bởi nhà phát triển.Trong bản demo AutoShoppe, các nhà phát triển đã viết một lớp nguyên mẫu trong JavaScript để xử lý chuyển đổi dữ liệu thành JSON trước khi gửi đến máy chủ, và họ phải viết mã JavaScript để marshall JSON thành các đối tượng JavaScript và thao tác dữ liệu đó trở lại HTML . Về phía máy chủ, họ đã sử dụng một Object Mapper để deserialize JSON thành các đối tượng. Hầu hết sự phức tạp là trên máy chủ.
Ưu điểm của việc biến thành phần phía máy chủ thành dịch vụ RESTful có thể tái sử dụng 100% mà nhà thiết kế và khách hàng có thể dễ dàng tương tác với có thể vượt quá những bất lợi, tùy thuộc vào tình huống. Một ví dụ điển hình có thể là một dịch vụ mà khách hàng của bạn được khuyến khích mã hóa giao diện người dùng của riêng họ hoặc có toàn quyền kiểm soát nhãn danh sách sản phẩm. Đây là một trong nhiều lý do why I won't use server side view technologies.
Có lẽ vì điều đó không tuân thủ "sự xuống cấp duyên dáng" và "nâng cao tiến bộ" - nếu người dùng đã tắt JS, trang web không thể sử dụng 100%. – thirtydot
Không bật JS giống như chạy Windows 3.1. Tất nhiên không có gì mới và thú vị sẽ làm việc :) Những người có tiền để chi tiêu tất cả đều sử dụng các trình duyệt hỗ trợ JavaScript. – jmort253
Tôi quên mất JS. Tôi hy vọng vào năm 2011, bạn có thể yêu cầu mọi người để có một trình duyệt sử dụng nó – punkouter