Giới thiệu dịch vụ RESTful với WCF – Phát triển ứng dụng di động, Dịch vụ web, Kiến trúc - Công nghệ SOA
Chuyển đến nội dung

Giới thiệu về Dịch vụ RESTful với WCF – Phát triển ứng dụng di động, Dịch vụ web, Kiến trúc SOA

  • qua

quảng cáo

Đầu tiên, các dịch vụ RESTFUL tuân theo một kiểu kiến trúc được gọi là Chuyển trạng thái đại diện (REST). Một phong cách kiến trúc là một tập hợp các ràng buộc có thể được áp dụng khi xây dựng một cái gì đó. Và kiểu kiến trúc phần mềm là thứ mô tả các đặc điểm có thể được sử dụng để hướng dẫn việc triển khai hệ thống phần mềm. REST là một kiểu kiến trúc có thể được sử dụng để xây dựng phần mềm mà các máy khách (tác nhân người dùng) có thể đưa ra các yêu cầu đối với dịch vụ (điểm cuối). REST là một cách để triển khai kiểu kiến trúc máy khách/máy chủ; trên thực tế, REST rõ ràng dựa trên kiểu kiến trúc máy khách/máy chủ.

Một người đàn ông tên là Roy Thomas Fielding lần đầu tiên đặt ra thuật ngữ REST như một khái niệm trong luận án tiến sĩ của mình (“Kiểu kiến trúc và Thiết kế Kiến trúc Phần mềm Dựa trên Mạng”). Anh ấy là một trong những người đã nghiên cứu đặc điểm kỹ thuật điều khiển hầu hết Internet ngày nay: Giao thức truyền siêu văn bản (HTTP) Thông thường, lý lịch của những người mô tả một phong cách kiến trúc không liên quan đến việc giải thích phong cách đó, nhưng ở đây tôi NGHĨ nó rất quan trọng vì tôi TIN rằng một trong những cách tốt nhất để hiểu cơ bản về REST là nghĩ về web và cách thức hoạt động của nó.

WCF và phần còn lại

WCF là khuôn khổ của Microsoft để xây dựng các ứng dụng giao tiếp qua mạng, bất kể giao thức hoặc kiểu dáng. Khái niệm WCF là tạo ra một khung có thể mở rộng, có thể cắm được để tìm hiểu thông tin về mô hình lập trình và cấu hình, để các nhà phát triển có thể áp dụng kiến thức đó cho nhiều loại hệ thống phân tán khác nhau.

Mặc dù đúng là phần lớn WCF được định hướng RPC (sử dụng SOAP), nhưng nó đã thực sự có cơ hội tiếp xúc và sử dụng các dịch vụ REST kể từ lần đầu tiên nó được phát hành như một phần của .NET Framework 3.0. Với hợp ngữ .NET Framework 3.5, System.ServiceModel.Web đã được thêm một mô hình lập trình cũng như một số phần cơ sở hạ tầng được xây dựng để hoạt động với kiểu REST. Và .NET Framework 3.5 SP1 thêm một số cải tiến nhỏ để làm cho REST dễ sử dụng hơn..

Mô hình lập trình xoay quanh hai thuộc tính mới, WebGetAttribute và WebInvokeAttribute, và một công cụ mẫu URI cho phép bạn khai báo URI và động từ mà mỗi phương thức sẽ phản hồi. Cơ sở hạ tầng được bao gồm dưới dạng liên kết (WebHttpBinding) và hành vi (WebHttpBehavior) cung cấp ngăn xếp mạng chính xác để sử dụng REST. Ngoài ra, có một số trợ giúp về cơ sở hạ tầng lưu trữ từ ServiceHost tùy chỉnh (WebServiceHost) và ServiceHostFactory (WebServiceHostFactory).