Bài giảng SOAP new
Trang 1BÁ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
Trang 2Phần IV Tài liệu tham khảo.
NỘI DUNG TRÌNH BÀY
Trang 3Phầ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
Trang 4I Đị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
Trang 5web service
Interne t
Interne t
Firew all
Firew all
Firew all
WebService Web Service
Trang 6web 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
Trang 7CÁC THÀNH PHẦN CỦA WEB SERVICES
Trang 8• 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
Trang 9Đế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
Trang 10+ 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ạnphải xác định các thẻ của riêng bạn (*)
+ XML được thiết kế để tự mô tả
XML là gì?
Trang 13• 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".
• <root>
<h:table xmlns:h="http://www.w3.org/TR/html4/" > <h:tr>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>
</root>
Trang 14II 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
Trang 15• 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?
Trang 16 + 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:
Trang 17• <?xml version="1.0"?>
<soap:Envelope
envelope"
xmlns:soap="http://www.w3.org/2001/12/soap-soap:encodingStyle="http://www.w3.org/2001/12/ soap-encoding">
Trang 18Cấu trúc thông điệp SOAP
Trang 20Chứ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 giaotác
Trang 21Thuộ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)
Trang 22Phần tử khai báo nội dung chính trong thông điệpbody, chứa các thông tin yêu cầu và phản hồi.
Trang 23<?xml version="1.0"?>
<soap:Envelope
envelope"
</m:GetPriceResponse>
</soap:Body>
</soap:Envelope>
Trang 24SOAP 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 saumộ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
Trang 25Cá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
Trang 26• 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ủ:
Trang 27SOAP HTTP Binding
SOAP 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 = SOAP
Mộ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.
Trang 28• Ư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
• 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.
IV Ưu nhược điểm của SOAP
Trang 29Phầ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
Trang 30Simple object Access protocol
HTTP
HTTP
Trang 31Phầ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