2013-04-25 27 views
10

Tôi được yêu cầu thiết kế một API cho một khách hàng để thao tác một số dữ liệu. Bây giờ, cố gắng theo kịp với Jones ', tôi đã thiết kế điều này bằng cách sử dụng WebAPI. Tôi đăng lên Webservice Restful của mình một đối tượng thông qua $ .AjaxWebServices so sánh Webservices WebAPI vs MVC

Tại sao điều này khác với việc sử dụng cùng $ .Ajax để đăng lên Bộ điều khiển MVC 4.0 chuẩn?

Ưu điểm là gì?

Cảm ơn

====

liên quan đến câu trả lời tiềm năng Với:

Lưu ý Nếu bạn đã làm việc với ASP.NET MVC, sau đó bạn đã quen thuộc với các bộ điều khiển. Chúng hoạt động tương tự trong Web API, nhưng các bộ điều khiển trong Web API bắt nguồn từ lớp ApiController thay vì lớp Controller. Sự khác biệt lớn đầu tiên mà bạn sẽ thấy là các hành động trên các bộ điều khiển Web API không trả về các khung nhìn, chúng trả về dữ liệu.

====

Sẽ không này vẫn còn dư thừa, sau khi tất cả bạn luôn có thể

return JSON(x); 

từ bất kỳ bộ điều khiển MVC. API Web

+1

Không thực sự khác biệt nếu bạn sử dụng APIController của MVC hơn WebAPI. Xem câu hỏi này: http://stackoverflow.com/questions/9494966/difference-between-apicontroller-and-controller-in-asp-net-mvc –

+0

Bài viết thú vị về chủ đề này tại đây: http://encosia.com/asp -net-web-api-vs-asp-net-mvc-apis / –

Trả lời

1

Không có sự khác biệt trong phương thức $ .Ajax của bạn. Trang web của bạn không nên quan tâm đến cách máy chủ ajax thực hiện chính nó, mặc dù nó không phải là nhận thức được nếu nó hỗ trợ những thứ như oData và những gì không.

Ở phía máy chủ, có nhiều điểm khác biệt giữa chúng. Chắc chắn, bạn có thể tạo các trình xử lý Ajax trong MVC, nhưng WebAPI cung cấp cho bạn nhiều công cụ hơn và nhiều quyền lực hơn.

2

MVC được tối ưu hóa để có trình duyệt web với tư cách khách hàng. Web API có nhiều khả năng hỗ trợ nhiều máy khách khác nhau. NẾU khách hàng duy nhất của bạn là một trình duyệt web, thì MVC có thể sẽ là một lựa chọn tốt hơn.

Các vấn đề liên quan