Upload
k2b-solutions
View
7
Download
3
Embed Size (px)
DESCRIPTION
When you’re deciding go with either the RESTFul or the SOAP web services, it could be difficult to understand their limits; let’s have a discussion here!
Citation preview
Do RESTFul web services create impact over the SOAP web services?
REST (Representation State Transfer) and SOAP (Simple Object Access Protocol) are the most popular
of web services that are used by developers working with projects that are based on system integration.
Software architects design applications from different perspectives colleague and will be able to decide
the direction to take for exposing the API considering various reasons. So, let’s go ahead and discuss on
when and where either of these are used and if RESTFul creates an impact over SOAP.
What are Web Services?
Web service is a software system that is designed to be a support for interactions between machines
across the network. It is part of the overall Service Oriented Architecture, and used as process
decomposition and assembly model.
Web services are usually misunderstood for API; however APIs (or Server-Side Web API) are
programmatic interface for the request response message system. It is generally expressed in XML or
JSON, and is then exposed through the web using HTTP based server. Based on this one should get a
general idea on when SOAP or REST is preferred over the other, but the actual truth isn’t that simple.
Now that we can agree to the fact that Web Services aren’t similar to Web APIs, it is now a good idea to
understand why REST is used over SOAP.
REST easier than SOAP
It is common assumption that REST is easier to build and maintain than SOAP. Based on reality though,
developing the REST services can get complex pretty quick. Service abstractions, security requirements,
asynchronous processes, and so on can easily add up and the level of complexity drastically increases.
Coming to the testing part, now again RESTFul web services is easier then the SOAP’s, but it’s only
partially correct. For a basic REST service, testing is as simple as directing the browser towards its
service endpoints and getting your required results. But, then you add all your required addons - HTTP
headers, tokens, parameter validations, etc. - what happens? You can still test them, no issues, but then
K2B Solutions, No.5, Lakshmi Ammal Street, Ayavoo Colony, Aminjikarai, Chennai – 600029.Contact No: +1 (860) 730 3280, 9600007006
you may require plugins! And when plugins are required then the process becomes the same as testing the
SOAP services.
JSON served by RESTFul is faster than XML served by SOAP
Another assumption, but this just focuses on JSON vs XML, which we wouldn’t want to discuss about
now and here. But then, it is time we also consider, that RESTFul is a web service and can equally serve
XML or other MIME. So, this comes down to the basic requirements.
Built for the Web - REST
Unlike the previous two factors, this is very much true. Roy Fielding credits his creation (REST style
architecture) for using the web’s base technology to transport and communicate between the servers and
the clients, which is unlike SOAP.
Since HTML5 we can also see that the web has become a platform of its own, apart from serving its
initial requirements.
Catching some REST
When REST is used over HTTP, the catch feature of HTTP is utilized and therefore isn’t practical in
dynamic websites. This is because, unlike static websites that are generated ones, the dynamic ones will
require constant update in its contents (such as in a “stock market” related website). With SOAP on the
other hand you can build your own cache and not depend upon the protocol.
Security
When there is a comparison between REST and SOAP, there is hardly any discussion about security. To
put it simply REST uses the HTTP protocol for security (basic authentication and communication
encryption, TLS). But, when it comes to security in SOAP, it provides a completely standardized WS-
SECURITY setup. The HTTP isn’t reliable for its security and hence requires other protocols, in which
case SOAP is much straight forward and simpler.
Conclusion
We do understand that there are a number of other factors that you can consider, when comparing REST
and SOAP, but, these factors are detrimental. REST developed for the web and evolves with it; however
its web services are most truly REST-like as opposed to following the architecture. With SOAP it is
possible to bind it to HTTP and XML, and most apt for machine-to-machine communication. So, using of
REST or SOAP web service ultimately comes down to one’s personal preferences and the requirements.
Author Bio: This article is written by Deepak Vasan, a passionate writer with fondness towards the new
and exciting changes happening to the digital space – especially the spaces occupied by the web and app
development industries. He works as Technical Writer at K2B Solutions.