Web Services
In a Web Services, the Web technology such as HTTP, originally designed for human-to-machine communication, is utilized for machine-to-machine communication; more specifically for transferring machine-readable file formats such as XML and JSON.
In practice, a Web Service commonly provides an object-oriented web-based interface to a database server, utilized for example by another web server, or by a mobile app, that provides a user interface to the end user. Many organizations that provide data in formatted HTML pages will also provide that data on their server as XML or JSON, often through a Web Service to allow syndication. Another application offered to the end user may be a mashup, where a web server consumes several web services at different machines, and compiles the content into one user interface.
Asynchronous JavaScript And XML
Generic
Asynchronous JavaScript and XML (AJAX) is a dominant technology for Web Services. Developing from the combination of HTTP servers, JavaScript clients and plain old XML (as distinct from SOAP and W3C Web Services), now it is frequently used with JSON as well / or instead of XML.
REST
Representational State Transfer (REST) is an architecture for well-behaved web services that can function at Internet scale.
In a 2004 document, the W3C sets following REST as a key distinguishing feature of Web Services.
We can identify two major classes of Web Services:
- REST - compliant Web Services, in which the primary purpose of the service is to manipulate XML representations of web resources using a uniform set of "stateless" operations.
- Arbitrary Web Services, in which the service may expose an arbitrary set of operations.
Web API
A Web API is a development in Web Services where emphasis has been moving to simpler representational state transfer (REST) based communications. Restful APIs do not require XML-based Web Service protocols (SOAP and WSDL) to support their interfaces.
Tags: Web Services, HTTP, XML, JSON, AJAX