Thứ Năm, 1 tháng 12, 2016

WEB SERVICE

1,Khái niệm
-là một ứng dụng sở hữu những component phát tán ở trên mạng
và gọi thông qua XML message
-server provider and consume provider tương tác với nhau vớigiao thức chuẩn như soap
-giao thức chuẩn và công nghệ sử dụng trong webservice.
 +SOAP:simple object access protocol;
 +WSDL:web service description  language;
 +UDDI:Universal Description,discovery and Intergation;
-Java API forXML va Webservice.
 +Java APi for XML processing(JAXP)
  +java API for XML based RPC(JAX -RPC)
+java API for XML registries(JAXR)
+SOAP with Attachments API for java(SAAJ)
+Java API for XML Messaging(JAXM)
2:thể loại của web service 
-SOAP
-REST
SOAP
-Khái niệm cơ bản nhất của mô hình soap là việc sử dụng các tài liệu xml như những thông điệp trao đổi.Các tài liệu của xml có thể được tông hợp và đọc với một đoạn text đơn giản,ta có thể làm việc với xml hầu hêt trên mọi nền tảng.
*Đặc trưng của soap
-soap được thiết kế đơn giản và dễ mở rộng 
-tất cả message cua soap đều được mã hóa sử dụng xml
-soap sử dụng giao thức truyền dữ liệu riêng 
-soap không bị ràng buộc bởi bất kì ngôn ngữ lập trình nào 
-soap client không giữ bất kì tham chiếu đầy đủ nào đối tượng ở xa.
-vì những đặc trưng này ,nó không quan tâm tới công nghệ gì được dùng để thực hiện  miễn là người dùng sử dụng message theo định dạng xml .Tương tự service có thể được thực hiện trong bât kì ngôn ngữ nào miễn là nó có thể xử lý được message  theo dạng xml 
*Cấu truc soap được định dạng gồm các phần <Envelope>, <Header>  và <Body>.

Envelope là thành phần gốc của soap ,nó chứa các thành phần header và body.thành phần header là mộ cơ chế cho phép thêm các tính năng vào bên trong một thông điệp soap.Mỗi thành phần con của header là một header entry,các header entry dùng để diễn giải quy dịnh một số ngữ nghĩa của thông điệp soap.Các ứng dụng có thể xủa lý và định tuyến các thông điệp dựa trên thông tin header và thông tin bên trong thông điệp đó 
Cấu truc message theo dạng soap 
mesage theo dạng soap là một văn bản xml thường bao gồm các phần sau
-Phần tử gốc -envelop:phần tử bao trùm nội dung message ,khai báo văn bản xml như là một thông điệp soap
-Phần tử đầu trang header .chứa các thông tin tiêu đề trang ,phần tử này không băt buộc khai báo trong văn bản 
-Phần tử khai báo nội dung chính là thông điệp -body chứa các thông tin yêu cầu và phản hồi
-Phần tử phát sinh lỗi(Fault) cung cấp thông tin lỗi xảy ra trong quá trình xử lý thông điệp


RESTFul Web Service
-REST(Representational State Tranafer)
-Nó định nghĩa các quy tắc kiến trúc để bạn thết kế webservice chú trọng vào tài nguyên hệ thống ,bao gồm các trạng thái tài nguyên được dịnh dạng như thế nào và được chuyển tải qua HTTP thông qua số lượng lớn  người dùng  và được viết bởi những ngôn nhữ khác nhau.
-Web service sẽ tuân thủ theo 4 quy tắc sau 
  • Sử dụng các phương thức HTTP một cách rõ ràng
  • Phi trạng thái
  • Hiển thị cấu trúc thư mục như URls
  • Chuyển đổi JavaScript Object Notation (JSON) và XML hoặc cả hai.
  • -*sử dụng các phương thức http một cách rõ ràng
  • -Rest yêu cầu sử dụng các phương thức http một cách rõ ràng tương thich với giao thức chuẩn.Thiết kế rest cơ bản này thiết lập một ánh xạ  1- 1 giữa các hành động tao doc cap nhat và xóa .


  • Để tạo một tài nguyên trên máy chủ, bạn cần sử dụng phương thức POST.
  • Để truy xuất một tài nguyên, sử dụng GET.
  • Để thay đổi trạng thái một tài nguyên hoặc để cập nhật nó, sử dụng PUT.
  • Để huỷ bỏ hoặc xoá một tài nguyên, sử dụng DELETE.
  • -Thực ra bạn vẫn có thể dùng phương thức get để thêm tài nguyên,nhưng 
  • ở đây chúng ta muốn nó một cách rõ ràng vì vậy có thêm phương thức post
  • chuyển đổi giưa xml va json 
  • khi client gửi yêu cầu tới web service nó thường được truyền tải dưới dạng xml hay json và thông thường nhận về với hình thức tương tự.
  • -

  • -Đôi khi client cũng có thể chỉ định kiểu dữ kiệu nhận về mà nó 
  • mong muốn (Json hoac xml) các chỉ định này được gọi là các
  •  kiểu  mine .nó được gửi kèm trên phần header của request.
  • MIME-TypeContent-Type
    JSONapplication/json
    XMLapplication/xml
    XHTMLapplication/xhtml+xml




Phi trạng thái
Một đặc điểm của Rest là phi trạng thái(Stateless).Có nghĩa là nó không lưu giữ thông tin của client.chẳng hạn bạn vừa yêu cầu xem trang thứ 2 của một tài liệu và bây giờ  bạn muốn xem trang tiêp theo là trang thứ 3 rest khoong lưu giữ thông tin trước đó phcj vụ bạn trang số 2.REST khoogn quản lý các phiên làm việc(Session)
Hiển thị thư mục cấu trúc URL 
-Rest đưa ra một cấu trúc để người dùng có thể truy cập vào tài nguyên của nó thông qua url,tài nguyên ở đây là tât cả những thứ bạn có thể gọi tên được.
-các địa chỉ rét service cần phải trực quan một cách dễ đoán.
-Một vài nguyên tăc bổ sung dể lưu ý  trong khi nói về cấu trúc địa chỉ của Web service restfull la:
 +Giấu các đuôi  tài liệu  mở rộng của bản gôc rong máy chủ nếu có vì vậy bạn có thể giấu một số thứ mà không cần hay đổi địa chỉ URL 
+Để mọi thứ là chữ thường 
+Thay thế các khoảng trống bằng gạch chân hoặc gạch nối 
+tránh các chuỗi yêu cầu càng nhiều càng tôt 
+Thay vì sử dụng mã 404 khi yêu cầu địa chỉ cho một phần đường dẫn ,luôn luôn cung cấp một trang mặc định hoặc tài nguyên như một phản hồi 



HSự khác nhau giữa Soap va restfull 

STTSOAPREST
1)SOAP là một giao thứcREST là một cách thiết kế kiến trúc
2)SOAP là từ viết tắt của Simple Object Access Protocol(Giao thức truy cập đối tượng đơn giản)REST viết tắt của REpresentational State Transfer
3)SOAP can't use REST because it is a protocolREST có thể dùng các web services sử dụng SOAP vì nó có thể dùng bất kỳ giao thức nào như HTTP, SOAP
4)SOAP cung cấp các giao diện dịch vụ(services interfaces) cho các thành phần bên ngoài sử dụngREST sủ dụng đỉa chỉ URI để cung cấp các dịch vụ
5)JAX-WS là java API cài đặt web services theo giao thức SOAPJAX-RS là java API cài đặt web services theo kiến trúc RESTful
6)SOAP định nghĩa các chuẩn và quy tắc chặt chẽREST không định nghĩa nhiều chuẩn như SOAP
7)SOAP sử dụng băng thông và tài nguyên nhiều hơn RESTREST sử dụng băng thông và tài nguyên ít hơn SOAP
8)SOAP định nghĩa chuẩn bảo mật của riêng nóRESTful kế thừa chuẩn bảo mật tầng vận tải của giao thức mạng
9)SOAP chỉ hỗ trợ định dạng dữ liệu XMLREST hỗ trợ các định dạng dữ liệu khác nhau như text, HTML, XML, JSON
10)SOAP ít được dùng hơn RESTREST được ưa chuộng hơn SOAP
11)Được thiết kế để dùng trong tính toán phân tánThương không được dùng trong môi trường tính toán phân tán
12)Tin cậy hơnÍt tin cậy hơn – chẳng hạn, HTTP DELETE có thể trả về trạng thái OK ngay cả khi tài nguyên không được xóa
13)Hỗ trợ hầu hết các chuẩn bảo mật, tin cậy và giao dịchSử dụng tốt với các giao thức như: HTTP, SSL. Các phương thức DELETE và PUT thường bị vô hiệu hóa bởi tường lửa hoặc vấn đề bảo mật
14)SOAP hỗ trợ cả hai giao thức SMTP và HTTPREST gắn với giao thức HTTP

Không có nhận xét nào:

Đăng nhận xét