SOAP trong HTTP

Một phần của tài liệu Ứng dụng công nghệ java web service và XSL trong việc xây dựng các dịch vụ ngân hàng trực tuyến luận văn ths công nghệ thông tin 1 01 10 (Trang 31 - 34)

Hầu hết dữ liệu truyền trên Internet hiện nay sử dụng giao thức HTTP (HyperText Transfer Protocol). HTTP có mặt ở mọi nơi vì được hỗ trợ bởi một cơ sở hạ tầng lớn cùng với các máy chủ và trình duyệt đã được sử dụng một thời gian dài. Người tạo ra SOAP đã chú ý đến cơ sở hạ tầng này và thiết kế SOAP sao cho mọi thông điệp có thể được truyền như một phần của thông điệp HTTP. Điều này là một trong các yếu tố giúp SOAP được chấp nhận rộng rãi và đạt được thành công chưa từng có.

Đinh Thị Huyền Trang – K11T3 Máy chủ SOAP Yêu cầu Máy khách SOAP SOAP Trả lời

Chuyển đối thông điệp SOAP sang kiểu dữ liệu Web Service sử dụng Chuyển đổi kết quả

sang dạng thông điệp SOAP để gửi

Kiểu dữ liệu

Web Web Service

sử dụng Service

Hình 1.8: Mô hình hoạt động của SOAP

Các thông điệp SOAP cũng có thể được truyền bằng cách sử dụng các giao thức khác như SMTP hay FTP, nhưng SOAP không chỉ ra chi tiết cách sử dụng những giao thức đó.

Các thông điệp SOAP truyền qua HTTP được đặt trong phần thân của một yêu cầu hoặc phản hồi HTTP. Phần này thường dùng để chứa dữ liệu của biểu mẫu và HTML. HTTP là một giao thức yêu cầu / phản hồi, nghĩa là người gửi sẽ mong muốn có phản hồi (có thể là báo lỗi hoặc dữ liệu) từ người nhận. Các yêu cầu của HTTP là điển hình cho các thông điệp mà trình duyệt gửi đến một máy chủ Web để yêu cầu một trang web hay gửi một biểu mẫu. Một yêu cầu cho một trang Web thường được tạo ra từ một thông điệp GET của HTTP, trong khi việc gửi một dữ liệu của một “form” thường được thực hiện bằng thông điệp POST.

Hầu hết lưu lượng HTTP là sự kết hợp của các yêu cầu GET của HTTP và các trả lời HTTP. Yêu cầu GET của HTTP xác định trang web được yêu cầu và có thể bao gồm một vài tham số. Một thông điệp trả lời HTTP trả lại trang web đến người yêu cầu trong phần thân thông điệp đó.

Đinh Thị Huyền Trang – K11T3 POST /string_server/Object17 HTTP/1.1 Host: 209.110.197.2 Content-Type: text/xml Content-Length: 152 SOAPMethodName: urn:strings-com:IString#reverse <Envelope> <Header> <t:Transaction xmlns:t=“some-URI mustUnderstand=“1”> 1234 </t:Transaction> </Header> HTTP Header Header Envelope <Body> <m:reverse xmlns:m='urn:strings-com:IString'> <theString>Hello, World</theString> Body </m:reverse>

</Body> </Envelope>

Hình 1.9: Thông điệp yêu cầu của SOAP

Mặc dù yêu cầu GET của HTTP rất phù hợp cho việc yêu cầu các trang web nhưng nó không có phần thân chứa dữ liệu và do đó không thể sử dụng để truyền các thông điệp SOAP. Trong khi đó, yêu cầu POST của HTTP có phần thân chứa dữ liệu và rất phù hợp với việc truyền các thông điệp SOAP. Các thông điệp trả lời của HTTP, dù trả lời cho một thông điệp GET hay POST, đều có cùng định dạng và chứa dữ liệu. Web Service dùng SOAP 1.1 với HTTP luôn sử dụng các thông điệp HTTP POST mà không dùng HTTP GET.

200 OK Content-Type: text/xml Content-Length: 162 <Envelope> <Header> </Header> <Body> <m:reverseResponse xmlns:m='urn:strings- com:IString'> <result>Hello World </result> </m:reverseResponse>

</Body> </Envelope>

Đinh Thị Huyền Trang – K11T3

Một phần của tài liệu Ứng dụng công nghệ java web service và XSL trong việc xây dựng các dịch vụ ngân hàng trực tuyến luận văn ths công nghệ thông tin 1 01 10 (Trang 31 - 34)

Tải bản đầy đủ (DOCX)

(48 trang)
w