Simple Object Access Protocol (SOAP) is a note organized by W3C. It describes a lightweight protocol for exchanging information in a distributed or distributed environment. Soap is an XML-based protocol. It consists of three parts: Soap encapsulation (envelop), which defines a description of the content in a message and who sent the message, framework for who should accept and process it and how to process them; soap Encoding Rules (encoding rules), used to represent the applicationProgramAn instance of the data type to be used; an RPC (RPC representation) indicates the protocol for remote process calls and responses; a soap can be bound to multiple transmission protocols (binding ), use the underlying protocol to exchange information. This document only defines how soap is bound to HTTP and HTTP extensions.
Soap is a communication protocol. Based on the HTTP protocol, soap writes the Request Parameters in XML and submits the processing of web service servers (servlet, ASP or something) on the HTTP body, the results are also written in XML as response and sent back to the user end. To make the user end and Web Service correspond to each other, you can use WSDL as the description file for this communication method, the WSDL tool can be used to automatically generate WS and user-end framework files. Soap can be used to serialize complex objects and bind them to XML.
The predecessor of soap is RPC, which is the remote call processing protocol. This protocol is not secure. Most firewalls Block RPC communication packets, while soap uses HTTP as the basic protocol, port 80 enables soap to implement RPC through the firewall.
the SOAP protocol and HTTP protocol are both underlying communication protocols, but the request package format is different. The soap package is in XML format, now we do not need to understand soap in depth when writing Web Services. If the service and client use soap in the same environment, generally there are tools to automatically generate the soap Program Framework, so it doesn't matter if you don't know the details. however, if the environment of the client and service is different, such as the Java client and.. net service, or the Java service under Tomcat and the VB client, it is better to know some details. in particular, neither WSDL nor UDDI is a standard. If it is not used, you have to manually prepare the SOAP message.