So sánh asp.net web api vs java resfult api năm 2024

Khi lập trình với MVC, nhiều bạn vẫn thường nhầm lẫn sang Web API, vì MVC cũng trả về dữ liệu kiểu JSON bằng cách sử dụng JsonResult và cũng sử dụng được với các Ajax request. Trong bài viết này chúng ta cùng đi phân tích một số điểm giống và khác nhau giữa Asp.Net Web API và Asp.Net MVC:

So sánh asp.net web api vs java resfult api năm 2024

  1. MVC trả về cả View và Data trong đó Web API chỉ trả về Data.
  2. Web APi giúp xây dựng REST-full services trên nền tảng .NET. Hỗ trợ content-negitiation (tự động trả dữ liệu có kiểu phù hợp với client – Json, Xml, Atom,…), self-hosting mà MVC không có.
  3. Web API sẽ giúp bạn chuyển kiểu dữ liệu trả về theo thuộc tính Accept trong header của request và bạn không cần quan tâm đến điều đó. MVC thì chỉ trả về kiểu JSON.
  4. Web API, Request được mapping với các Actions dựa trên phương thức, vd: GET, PUT, POST, … Còn MVC thì Request được mapping với tên các Action.
  5. Asp.Net Web API là một nền tảng mới và là một phần của Asp.net. Các tính năng như model binding, filters, routing và nhiều tính năng khcá của MVC cũng có trong Web API nhưng nó được đóng gói vào System.Web.Http. Trong MVC những tính năng này nằm trong System.Web.MVC. Vì vậy Web API có thể được sử dụng với Asp.Net hay đứng độc lập.
  6. Bạn có thể dùng cả Web API và MVC controller trong cùng 1 project để xử lý các Ajax Request trả về dữ liệu kiểu Json, Xml,.. . Cái này gọi là Web API self-hosting.
  7. Khi dùng cả Web API và Web MVC, bạn cần kiểm soát quyền truy cập. Và như vậy trong hệ thống của bạn sẽ tồn tại 2 filter, một cho Web Api và một cho Web MVC.
  8. Hơn hết, Web API là một kiến trúc gọn nhẹ ngoài việc dùng cho các ứng dụng web, nó còn dùng được với các ứng dụng smart phone.

Theo http://www.dotnet-tricks.com/

  • Tweet
  • Share
  • Share
  • Share
  • Share

Hiện nay WebAPI đang nổi lên là công cụ lập trình web mới và được rất nhiều người sử dụng. Vậy API là gì? Nguồn gốc và ưu điểm của nó là như thế nào chúng ta hãy cùng đi tìm hiểu trong nội dung bài viết sau.

API là viết tắt của Application Programming Interface (giao diện lập trình ứng dụng) phương thức kết nối với các thư viện và ứng dụng khác. Windows có nhiều API, và Twitter cũng có web API, tuy nhiên chúng thực hiện các chức năng khác nhau, với mục tiêu khác nhau. Nó chính là một phần mềm giao tiếp được sử dụng bởi các ứng dụng khác nhau. Nó cũng giống như bàn phím là thiết bị dùng để giao tiếp giữa người sử dụng và máy tính, API là một phần mềm giao tiếp giữa chương trình và hệ điều hành.

Mỗi bộ API dành cho các hệ điều hành khác nhau là hoàn toàn khác nhau và không có sự tương thích với nhau. API dành cho các hệ điều hành Windows và Linux là hoàn toàn khác nhau. API cung cấp khả năng cung cấp khả năng truy xuất đến một tập các hàm hay dùng. Nói nôm na API là một loại công cụ để tạo ra phần mềm, cũng giống như các viên gạch xây nên một toà nhà.

Chúng ta chia việc xây nhà ra các phần khác nhau, API cũng như viên gạch là một bộ phận của ngôi nhà, nhưng việc tạo ra nó là một công đoạn riêng hoàn toàn, chúng ra có thể tự làm hoặc đơn giản là đi mua của các nhà cung cấp. Web API là một trong những công nghệ mới của Microsoft dùng để xây dựng dịch vụ thành phần phân tán. Web API là mô hình dùng để hỗ trợ MVC bao gồm: routing, controller, action result, filter, filter, loc container, model binder, unit test, injection. Bên cạnh đó nó còn hỗ trợ restful đầy đủ các phương thức: Get/Post/put/delete dữ liệu.

Những điểm nổi bật của API

Đây là một trong những framework mới sẽ giúp ít cho bạn trong việc xây dựng các HTTP service một cách rất đơn giản và nhanh chóng. Mã nguồn mở nên bạn có thể được sử dụng bởi bất kì một client nào hỗ trợ XML, JSON. Nó cũng có khả năng hỗ trợ đầy đủ các thành phần HTTP: URI, request/response headers, caching, versioning, content forma. Bạn có thể sử dụng các host nằm trong phần ứng dụng hoặc trên IIS. Một kiểu kiến trúc vô cùng phù hợp dành cho các thiết bị trang bị băng thông giới hạn như smartphone, tablet. Thường nó có định dạng dữ liệu là JSON, XML hoặc một kiểu dữ liệu bất kỳ.

Ưu điểm:

Cấu hình đơn giản khi được so sánh với WCF Khả năng trình diễn cao Hỗ trợ chức năng RESTful một cách đầy đủ Hỗ trợ đầy đủ các thành phần MVC như: routing, controller, action result, filter, model binder, IoC container, dependency injection, unit test Mã nguồn mở.

Vậy API có phải một ngôn ngữ lập trình không?

Câu trả lời là không. Các hàm API cũng như các hàm bình thường mà chúng ta hay viết và trên từng ngôn ngữ khác nhau cũng có các bộ API tương ứng khác nhau. Ví dụ: Google API có bộ cho .NET, PHP,.. Và mỗi bộ API hầu như đều có hướng dẫn sử dụng rất cụ thể và chi tiết.

Cách tạo dự án MVC web API Đầu tiên bạn vào File/ New/ Project, sau đó chọn ASP.NET Web Application, rồi OK, chọn tiếp template Web API Tiếp theo để tạo cơ sở dữ liệu cho dự án bạn chọn chuột phải vào dự án Add New Item, SQL Server Database, sau đó lưu vào thư mục App_Data. Tạo những model, controller, view sau đó vào các thư mục Models, Controllers vàViews.