Tech talks are knowledge sharing sessions conducted bi-weekly at NovelVox. This week, we had a session on REST and SOAP web services covering the advantages and disadvantages involved. The session was conducted by Mohammad Zaid on June 24, 2020.
About Web Services
A Web service is a client-server application component for communication that provides an object-oriented web-based interface to other applications. Two applications or devices can communicate over a network with the help of a web service. You can also refer a web service as a standard of protocols for exchanging information between two devices or application
Primarily, web services are of the following two types:
SOAP is an abbreviation for Simple Object Access Protocol whereas REST is abbreviated as Representational State Transfer.
Let’s learn about these service types in detail.
SOAP is an XML-based protocol that is used to access web services. It is platform-independent and does not depend upon any language. It is also a W3C recommendation for establishing communication between two applications or devices.
There are many advantages of using SOAP as a web service, few are listed below:
- The very first advantage of using SOAP is that it uses XML data for payload and contract which makes it readable for any technology.
- It syncs well in distributed enterprise environments.
- Being a WSDL document, it provides contract and technical details of the web services for client applications without exposing the underlying implementation technologies.
- The SOAP protocol is universally accepted which makes it an industry-standard approach with many easily available open-source implementations.
There are few limitations or disadvantages that come up with this technology and they are listed below:
- SOAP uses XML language which makes it heavier and slow even for a simple string message as compared to REST that uses lightweight JSON language.
- Being based on the contract, tight coupling between client and server applications is usually experienced.
- SOAP cannot be tested easily in the browser.
REST is an architectural style, loosely coupled, lightweight web service. It is mostly used for creating APIs. The advantages of picking up REST web service instead of SOAP are as follows:
- It is stateless
- It supports a wide range of data formats, whereas SOAP only allows XML.
- It uses lesser bandwidth and hence gives faster results.
- It is coupled with JSON, hence considered easier to work with.
- Superior performance can be experienced through caching of information.
- Being stateless, REST requires extra information in each request to interpret the client’s state.
- Sometimes one has to deal with irregular data and exceptional situations.
- It has a limitation to work well with only HTTP protocol only.
- It does not provide inbuilt security like SOAP.
- No Standards are defined for REST.
Apart from getting the technical insights of using REST and SOAP services, NovelVoxians also tried their hands on the coding involved. A practical session was conducted by the host to impart the coding knowledge required in using the above web services.
This was a brief about the tech talk conducted by NovelVoxian Mohammad Zaid on REST and SOAP web services.