Sau khi đọc tất cả các câu trả lời hay khác, tôi nghĩ có thể hữu ích khi cung cấp phiên bản "siêu laymans". Tôi hy vọng nó sẽ giúp.
SOAP giống như phiên bản máy tính sử dụng dịch vụ bưu chính. Một tin nhắn (như một lá thư) được đặt trong một phong bì và gửi đến người mà nó được dự định.
Chủ yếu, SOAP là từ vựng XML. Nó định nghĩa một ngôn ngữ, sử dụng đặc tả XML, để biết cách gửi và gửi tin nhắn.
Cụ thể, nó chuẩn hóa những gì chúng ta gọi là:
- "phong bì" (trên thực tế gọi là một phong bì SOAP)
- "chữ" (gọi tắt là "cơ thể")
- chú thích khác nhau (được gọi là "tiêu đề" - hãy nghĩ về những dấu như vậy, yêu cầu chữ ký, thông tin người gửi, v.v. - bưu điện sử dụng để định tuyến thư)
Ngoài ra, SOAP định nghĩa type-system
, m uch giống như các định nghĩa kiểu bạn tìm thấy trong .Net, Java hoặc XSD.Tôi sẽ không giải thích về điều này - vì có rất nhiều tài liệu ở đó như đã đề cập trong các câu trả lời trước.
Trọng tâm thiết kế chính của ngôn ngữ/từ vựng này là cho phép khả năng tương tác trên các nền tảng. Vì vậy, Java gọi COM, gọi .Net, gọi J2EE và phần còn lại trong khi vẫn có thể mở rộng trong tương lai gần. Thay vì xây dựng một cầu nối khác giữa đối tượng COM và lớp Java, chúng ta có thể sử dụng SOAP để trưng ra chức năng của đối tượng để các nền tảng khác có thể sử dụng chúng mà không cần cầu nối. Hoặc, để đặt nó một cách khác nhau - SOAP là một cây cầu cuối cùng, được thiết kế để thay thế tất cả các cây cầu trước đó.
Hiện tại, tất cả các bộ công cụ phát triển chính đều có một số hình thức hỗ trợ SOAP. Điều này đã làm cho khả năng tương tác ngày càng có sẵn - nhưng trong hầu hết các môi trường, một mức cấu hình nhất định vẫn cần thiết để làm cho giao tiếp thực sự liền mạch.
Tôi cũng nên lưu ý rằng SOAP không còn là viết tắt của ý định ban đầu của nó. Tại một số điểm, tôi nghĩ rằng một số người quan trọng sẽ (lại) đặt tên cho nó: Service Oriented Access Protocol
.
Tôi hy vọng điều này sẽ hữu ích!
Nguồn
2010-03-12 18:28:30
Tôi đã từng gặp một lập trình viên cũng cần đặt câu hỏi "Ai đó có thể giải thích cho tôi SOAP là gì và nó được sử dụng để làm gì?", Nhưng không viết hoa. –
nghiêm túc, tôi vẫn cười @ bình luận này ... –
Người lập trình và vệ sinh tốt không phải luôn luôn đi đôi với nhau. –