37

让我们有一个示例场景:

客户打开一个网站并找到他从文本框中输入的两个数字的总和。然后单击“添加”按钮。两个参数被 HTTP GET'ed 到服务器,在其中编写 PHP 代码以添加数字并回显结果.

基于这种情况,任何人都可以解释 Web 服务和应用程序之间的区别吗?

4

8 回答 8

56

在您的情况下,如果您有提供两个数字然后获取结果的用户界面,它应该被称为 Web 应用程序。但是如果你有一个 API 暴露来接收两个数字并通过 http 返回结果,那么它应该被称为 Web 服务。
在底层,Web 应用程序和 Web 服务是一回事。但要点是,Web 服务用于机器/程序到机器/程序的通信,而 Web 应用程序用于用户。

于 2012-05-16T09:07:15.170 回答
26

我会说 Web 应用程序是为用户设计的,而 Web 服务是为其他应用程序设计的。这是最重要的区别。Web 应用程序通常以 HTML 格式呈现数据,这对用户来说看起来不错,而 Web 服务通常以 XML 格式呈现数据,以便其他应用程序解析。

于 2012-05-16T09:02:10.617 回答
23

一个人开车。那辆车可以由内燃机、电动机或核反应堆提供动力。不过,电源对驾驶员来说并不重要,因为他们需要看到的只是控制装置和前方的道路。

应用程序是汽车。Web 服务是核反应堆。

于 2012-05-16T09:10:39.590 回答
9

加 2 我们编写一个 web 服务,减去我们编写一个不同的 web 服务,但是计算器是一个 web 应用程序,它使用了 add、subtract 和许多其他 web 服务的组合。

于 2012-10-22T09:12:02.950 回答
7

让我们以谷歌搜索为例。我们可以通过两种方式使用 Google 搜索。首先,我们可以访问http://www.google.com并提出查询进行搜索。谷歌返回结果。其次,我们可以将 Google 搜索与自定义搜索 API 集成到我们的网站中。

在第一种情况下,Google 搜索充当 Web 应用程序,而在第二个示例中,它充当 Web 服务。

在这里我们可以指出一些不同之处,

  1. 用户与 Web 应用程序交互,而机器与 Web 服务交互。
  2. 要访问 Web 应用程序,必须访问应用程序。虽然可以从任何地方(从任何集成它的应用程序)访问 Web 服务。我们不需要显式访问服务。
于 2015-03-16T09:56:56.667 回答
5

webservice 相当于 java 中的一个方法,它有一个 web 包装器。它存在于服务器上,可以发送数据/查询等,并且可能会或可能不会返回结果。它没有任何前端,只能通过 http get、put、delete 等方式访问。

Web 应用程序是一个功能齐全的软件,它存在于旨在帮助人们完成任务的服务器上。这将有一个前端,允许用户与之交互/输入数据等。

Web 应用程序可以使用多个 Web 服务来实现其目标/最终结果

于 2012-05-16T09:02:27.233 回答
3

Web 应用程序和 Web 服务之间几乎没有区别。Web 应用程序:在 Web 应用程序中,当用户请求任何数据时,服务器会将响应嵌入到一些 HTML 中并将其转发给用户,然后在浏览器上呈现 HTML。而在 Web 服务中,它的完成方式不同,当一些用户请求某些数据时,服务器会返回一个 json 或 XML 对象数组,并且数据可以按 Web 设计人员想要的任何方式显示。
谢谢希望它能解决问题。

于 2014-05-05T19:19:54.663 回答
0

Web service is for application consumption , invoked through web application To communicate with webservice data should be sent as SOAP message or as REST i.e XML over HTTP

Most of the times web service is not part of application because to facilitate the use by other web applications and it is not for direct consumption to end users

Web application is for human consumption invoked directly by GUI which may or may not use web service for giving response

于 2016-04-20T12:30:30.887 回答