Nội dung chính
Web Service là gì?
Một Web Service có thể được xác định bởi những cách sau đây:
- là phương thức giao tiếp giữa hai thiết bị qua mạng.
- là ứng dụng hoặc thành phần ứng dụng để giao tiếp.
- là tập hợp các tiêu chuẩn hoặc giao thức để trao đổi thông tin giữa hai thiết bị hoặc ứng dụng.
Hãy hiểu Web Service bằng các hình ảnh sau:
Như bạn có thể thấy trong hình, các ứng dụng java, .net hoặc PHP có thể giao tiếp với các ứng dụng khác thông qua web service qua mạng. Ví dụ, ứng dụng java có thể tương tác với các ứng dụng Java, .Net và PHP. Vì vậy, web service là một cách độc lập về ngôn ngữ giao tiếp.
Các loại web service
Có hai loại web service chủ yếu:
- SOAP web service.
- RESTful web service.
SOAP Web Service
SOAP là viết tắt của Simple Object Access Protocol. Nó là một giao thức dựa trên XML để truy cập các web service.
SOAP được khuyến cáo bởi W3C cho giao tiếp giữa hai ứng dụng.
SOAP là giao thức dựa trên XML. Đó là nền tảng độc lập và ngôn ngữ độc lập. Bằng cách sử dụng SOAP, bạn sẽ có thể tương tác với các ứng dụng ngôn ngữ lập trình khác.
Ưu điểm của SOAP web service
WS Security: SOAP định nghĩa bảo mật riêng của nó được gọi là WS Security.
Ngôn ngữ và nền tảng độc lập: các SOAP web service có thể được viết bằng bất kỳ ngôn ngữ lập trình nào và được thực thi trong bất kỳ nền tảng nào.
Nhược điểm của SOAP web service
Chậm: SOAP sử dụng định dạng XML phải được phân tích cú pháp. Các ứng dụng SOAP phải tuân theo nhiều tiêu chuẩn. Vì vậy, nó là chậm và chiếm nhiều băng thông và tài nguyên.
Phụ thuộc WSDL: SOAP sử dụng WSDL và không có bất kỳ cơ chế nào khác.
RESTful Web Service
REST là viết tắt của REpresentational State Transfer.
REST là một kiểu kiến trúc không phải là một giao thức.
Ưu điểm của RESTful web service
Nhanh: RESTful web service nhanh vì không có đặc tả nghiêm ngặt như SOAP. Nó chiếm ít băng thông và tài nguyên hơn.
Ngôn ngữ và nền tảng độc lập: RESTful web service có thể được viết bằng bất kỳ ngôn ngữ lập trình nào và được thực hiện trong bất kỳ nền tảng nào.
Có thể sử dụng SOAP: RESTful web service có thể sử dụng các SOAP web servie khi thực hiện.
Cho phép nhiều định dạng dữ liệu khác nhau: RESTful web service cho phép định dạng dữ liệu khác nhau như Plain Text, HTML, XML và JSON.
Các thành phần của web service
Web service có 3 thành phần chính:
- SOAP (Simple Object Access Protocol) - giao thức truy cập đối tượng đơn giản.
- WSDL (Web Services Description Language) - ngôn ngữ định nghĩa web service.
- UDDI (Universal Description, Discovery and Integration).
SOAP
SOAP là viết tắt của (Simple Object Access Protocol) - giao thức truy cập đối tượng đơn giản.
SOAP là một giao thức dựa trên XML để truy cập các web service.
SOAP là một khuyến nghị của W3C về giao tiếp giữa các ứng dụng.
SOAP dựa trên XML, vì vậy nó độc lập với nền tảng và ngôn ngữ độc lập. Nói cách khác, nó có thể được sử dụng với ngôn ngữ Java, .Net hoặc PHP trên bất kỳ nền tảng nào.
WSDL
WSDL là từ viết tắt của (Web Services Description Language) - ngôn ngữ định nghĩa web service.
WSDL là một tài liệu xml chứa thông tin về các web service như tên phương thức, tham số phương thức và cách truy cập nó.
WSDL là một phần của UDDI. Nó hoạt động như một giao diện giữa các ứng dụng web service.
UDDI
UDDI là từ viết tắt của Universal Description, Discovery and Integration.
UDDI là một framwork dựa trên XML cho việc mô tả, khám phá và tích hợp các web sevice.
UDDI là một thư mục các giao diện web service được mô tả bởi WSDL, chứa thông tin về các web service.