Trong đó:
WSDL (Web Service Description Language ):Là ngôn ngữ mô tả dịch vụ
UDDI (Universal Description, Discovery, and Integration) :được sử dụng để đăng ký và tìm dịch vụ Web đã được miêu tả cụ thể trong WSDL , UDDI sử dụng SOAP để giao tiếp với UDDI server
SOAP:giúp client có thể truy xuất đến UDDI registry bằng các lệnh SOAP
31 trang |
Chia sẻ: haohao89 | Lượt xem: 5172 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu về SOAP, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BÁO CÁO BÀI TẬP LỚN MÔN MẠNG MÁY TÍNH VÀ LẬP TRÌNH MẠNGĐỀ TÀI:TÌM HIỂU VỀ SOAP GVHD: ĐOÀN THỊ THU HÀ Nhóm sinh viên thực hiện:Nhóm19 ĐINH THỊ QUYÊN - 533413 NGUYỄN THỊ SEN - 533416 HOÀNG THỊ THÁI - 533419 Phần I. Mở đầu Phần II. Nội dung I. Định nghĩa SOAP II. Các đặc trưng của SOAP III. Cấu trúc thông điệp SOAP IV. Ưu nhược điểm của SOAP Phần III. Kết luận Phần IV. Tài liệu tham khảo. NỘI DUNG TRÌNH BÀY Phần I. Mở đầu Như chúng ta đã biết ngày nay công nghệ thông tin đang phát triển rất mạnh mẽ.Song song với điều đó là nhu cầu tìm hiểu,trao đổi thông tin giữa các ứng dụng cũng rất cao.Và tất nhiên phải có những giao thức giúp cho việc trao đổi thông tin được diễn ra và SOAP chính là một trong những giao thức để làm được điều đó.Sau đây chúng ta sẽ nghiên cứu về SOAP I. Định nghĩa SOAP (Simple Object Access Protocol) + Là giao thức được Web Service sử dụng để truyền dữ liệu qua Internet . + SOAP = XML + một giao thức có thể hoạt động trên Internet (HTTP, FTP, SMTP), trong đó HTTP phổ biến hơn cả. Phần II. Nội dung web service web service Là một abstract interface, được thể hiện trong HTML dựa trên sự tương tác của User & Web Server . Là một software application được truy xuất thông qua Web bởi một ứng dụng khác . CÁC THÀNH PHẦN CỦA WEB SERVICES UDDI WSDL SOAP Web Service UDDI WSDL SOAP UDDI WSDL SOAP UDDI WSDL Trong đó: WSDL (Web Service Description Language ):Là ngôn ngữ mô tả dịch vụ UDDI (Universal Description, Discovery, and Integration) :được sử dụng để đăng ký và tìm dịch vụ Web đã được miêu tả cụ thể trong WSDL , UDDI sử dụng SOAP để giao tiếp với UDDI server SOAP:giúp client có thể truy xuất đến UDDI registry bằng các lệnh SOAP Đến đây chúng ta đã hiểu được web services là như thế nào, nó được công bố và truy xuất ở đâu. Nhưng vẫn còn một vấn đề khá quan trọng đó là: Làm thế nào chúng ta truy xuất dịch vụ khi tìm thấy? Câu trả lời là web servicves có thể truy xuất bằng một giao thức là Simple Object Access Protocol – SOAP. Nói cách khác chúng ta có thể truy xuất đến UDDI registry bằng các lệnh gọi SOAP. + XML là viết tắt của eXtensible Markup Language. + XML là một ngôn ngữ đánh dấu tương tự như HTML. + XML được thiết kế để mang dữ liệu, không để hiển thị dữ liệu. +Các thẻ XML không được định trước. Bạn phải xác định các thẻ của riêng bạn (*) + XML được thiết kế để tự mô tả XML là gì? XML Namespaces XML Namespaces cung cấp một phương pháp để tránh xung đột tên phần tử. Giải quyết các xung đột Tên Sử dụng một tiền tố Ví dụ Apples Bananas African Coffee Table 80 120 Khi sử dụng các tiền tố cho namespace phải được định nghĩa cú pháp :xmlns: prefix(Tiền tố) = "URI". Apples Bananas African Coffee Table 80 120 II. Các đặc trưng của SOAP + SOAP là ngôn ngữ độc lập + SOAP xây dựng dựa trên XML + SOAP được thiết kế đơn giản và dễ mở rộng. + SOAP dung cho giao tiếp giữa các ứng dụng + SOAP là một định dạng cho việc gửi messages + SOAP giao tiếp qua Internet + Có khả năng hoặt động "xuyên qua" tường lửa V,v,v,…. Ngày nay, các ứng dụng giao tiếp với nhau bằng cách sử dụng Remote Procedure Calls (RPC) như DCOM và CORBA, nhưng HTTP không được thiết kế cho việc này. RPC đại diện cho một khả năng tương thích và các vấn đề bảo mật, nhưng các thông báo qua mạng thường bị tường lửa và proxy servers chặn lại. Cách tốt hơn để giao tiếp giữa các ứng dụng là sử dụng HTTP, bởi vì HTTP được hỗ trợ bởi tất cả các trình duyệt Internet và máy chủ nên SOAP được tạo ra để thực hiện điều này. SOAP = XML + HTTP Why SOAP? + Một message SOAP phải được mã hóa bằng cách sử dụng XML + Một message SOAP phải sử dụng SOAP Envelope namespace + Một message SOAP phải sử dụng SOAP Encoding namespace + Một message SOAP không phải có một tham chiếu DTD Quy tắc cú pháp: ...... ... Khung message SOAP Cấu trúc thông điệp SOAP Phần tử SOAP Envelope + 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. ... Message information goes here ... Chứa các thông tin tiêu đề cho trang, phần tử này không bắt buộc khai báo trong văn bản. Những đầu mục còn có thể mang những dữ liệu chứng thực, những chữ ký số hóa, và thông tin mã hóa, hoặc những cài đặt cho giao tác. Jessica Phần tử SOAP Header Thuộc tính của SOAP header + Thuộc tính Actor Chứa các thông tin chỉ nhằm mục đích trung gian hoặc thông tin cho các điểm cuối cùng. + Thuộc tính MustUnderstand Thuộc tính này cho biết một header entries đang bắt buộc tùy chọn hoặc tùy chọn (optional or mandatory). Phần tử khai báo nội dung chính trong thông điệp body, chứa các thông tin yêu cầu và phản hồi. Phần tử Body SOAP Apples 1.90 SOAP Fault này là phần tử Body đưa vào chỉ được xác định bởi SOAP. Nó được sử dụng để đưa ra thông tin lỗi của một thông điệp SOAP ban đầu. Các phần tử Faults phải xuất hiện ngay sau một phần tử con của các phần tử Body, và nó không thể xuất hiện nhiều hơn một lần Phần tử SOAP Fault Các phần tử của SOAP Fault Faultcode Element : Xác định lỗi Faultstring Element : Giải thích về lỗi Faultactor Element : Xác định đối tượng gây ra lỗi. Detail Element : Xác định cụ thể do lỗi liên kết với các phần tử Body massage HTTP truyền qua TCP / IP. Một HTTP client kết nối đến một máy chủ HTTP bằng cách sử dụng giao thức TCP. Sau khi thiết lập kết nối, client có thể gửi một message yêu cầu HTTP từ máy chủ: POST /item HTTP/1.1Host: 189.123.345.239Content-Type: text/plainContent-Length: 200 Server sau đó sẽ xử lý yêu cầu và gửi một phản hồi HTTP lại cho client. Phản hồi này có chứa một mã trạng thái cho biết trạng thái của yêu cầu: 200 OKContent-Type: text/plainContent-Length: 200 Trong ví dụ trên, server trả lại một mã trạng thái 200. Đây là mã tiêu chuẩn thành công cho HTTP.Nếu server không thể giải mã các yêu cầu, nó có thể trả lại như thế này: 400 Bad RequestContent-Length: 0 SOAP HTTP BINDING SOAP HTTP BindingSOAP là cách thức yêu cầu / Phản hồi HTTP mà tuân thủ các quy tắc mã hoá SOAP.HTTP + XML = SOAPMột yêu cầu SOAP có thể là một HTTP POST hoặc HTTP GET.Các yêu cầu HTTP POST xác định ít nhất hai tiêu đề HTTP: Content-Type và Content-Length. Ưu điểm : Dễ dàng kết nối với proxies và firewall. SOAP hỗ trợ linh động với những giao thức vận chuyển khác nhau. SOAP là platform độc lập. SOAP là ngôn ngữ độc lập. Nhược điểm : Không thể cạnh tranh tốc độ với những công nghệ như CORBA. Chỉ client mới có thể sử dụng được dịch vụ do SOAP cung cấp. HTTP quá đơn giản để tạo ra các trang web hay dịch vụ mà chỉ có các công nghệ mới mới đáp ứng được. Không phải tất cả các ngôn ngữ đều hỗ trợ SOAP (JAVA). IV. Ưu nhược điểm của SOAP Phần III. Kết luận Bài tìm hiểu trên đây chỉ cho chúng ta cách sử dụng SOAP để trao đổi thông tin giữa các ứng dụng thông qua HTTP. Giúp ta hiểu rõ hơn về các phần tử và các thuộc tính khác nhau trong một message SOAP. Bạn cũng đã biết được cách sử dụng SOAP như là một giao thức để truy cập một dịch vụ web. Simple object Access protocol HTTP HTTP Phần IV. Tài liệu tham khảo Bài giảng môn mạng máy tính và lập trình mạng - GV Đoàn Thị Thu Hà Ebook: Java. and SOAP Mạng máy tính và các hệ thống mở - Nguyễn Thúc Hải – NXB Giáo Dục 1999 V,v,v,…