1

According to W3C:

Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format

Web application conforms to this definition. Its interface is HTTP.

So can web application be called web service?

1

2 Answers 2

2

Quick Answer: NO, even-though they are both applications with different purpose.

Longer Answer: A web application is generally used to build websites which have UI (web pages, views, some presentation layer).

A web service is an application that provides services to consumers (web applications, thick clients, other services, mobile apps, etc.). Those services may provide data, perform some calculation or just about anything other than providing a UI. Thus, it will have a clearly-defined API which consists of providing responses to HTTP GET and POST requests made by a remote application. Now, this doesn't mean you can't access a web service from your browser, but it means that the application won't necessarily have a GUI user interface. For example: receive all results of GET and POST requests as strings of XML/JSON, which requires a client-side parser.

1

I would say that it isn't, and that your interpretation of the interface is incorrect.

HTTP isn't the interface that a web service exposes. A web service exposes a higher level interface, say, a set of REST endpoints or a SOAP contract, that is machine readable. Saying that a web service exposes an HTTP interface is like saying it exposes a TCP/IP interface - technically true, perhaps, but at a lower level, thus making it irrelevant.

A web application is a set of HTML tags, or rich content (Flash, etc), that is human readable. A human is needed to understand that clicking the "Contact Us" link leads to a contact form, and it is not machine-readable.

1
  • One might argue that HTML is not human readable, it's rendered by a browser. From that point of view the browser is client and the web application is service. Aug 2, 2019 at 14:16

Not the answer you're looking for? Browse other questions tagged or ask your own question.