Answers:
一个简单的定义:Web服务是可以由其他程序通过Web(HTTP)访问的功能。
例如,当您使用PHP创建一个输出HTML的网站时,其目标是浏览器,并且通过扩展,人类可以在浏览器中读取页面。Web服务不是针对人类的,而是针对其他程序的。
因此,如果您生成随机整数的PHP网站以一种可能会被其他程序使用的格式输出整数,则它可能是一个Web服务。只要其他程序可以理解输出,它就可以是XML格式或其他格式。
完整的定义显然要复杂得多,但是您要求使用简单的英语。
简化的,非技术性的解释:Web服务允许PROGRAM与网页对话,而不是使用浏览器打开网页。
示例:我可以转到maps.google.com,输入我的家庭住址,然后在浏览器中查看我的居住地地图。
但是,如果您正在编写一个计算机程序,想要在其中输入地址并显示漂亮的地图(如Google地图),该怎么办?
好吧,您可以从头开始编写一个全新的地图程序,或者您可以调用Google Maps提供的Web服务,向其发送地址,然后它将返回该位置的图形地图,您可以在程序中显示该地图。
在其他一些帖子中,还有很多其他内容,但是最终结果是它允许您的应用程序从某些资源中检索信息,或向某些资源提交信息。其他一些例子:
是的,那是一个简单的Web服务。
Web服务实际上只不过是一种允许客户端远程访问/修改数据的请求/响应机制。Web服务有正式的标准(SOAP,SOA等),但是您的简单页面也是一种服务。
将其打印到页面的主要缺点是您的服务将返回HTML。首选的数据格式是JSON和XML,因为大多数客户端框架(和服务器框架)都是围绕使用JSON和XML设计的。
因此,如果您修改了服务以返回:
<RANDOM>some random number</RANDOM>
而不是:
<HEAD>...</HEAD>
<BODY>some random number</BODY>
那么对大多数客户来说,它会更有用
简而言之,Web服务就是通过http协议提供数据即服务的东西。当然,情况并非总是如此……但是很接近。
标准Web服务使用SOAP协议,该协议定义消息的通信和结构,而XML是数据格式。
Web服务旨在允许使用不同技术构建的应用程序相互通信而不会出现问题。
Web服务的示例包括Weather.com提供可在您的站点上使用的天气信息,或UPS提供请求运输报价或跟踪包裹的方法。
编辑
更改了有关SOAP的措辞,因为正如我所提到的,它并不总是SOAP,而是希望使其更加清晰。关键是将数据作为服务而非UI元素提供。
Web服务与网站的不同之处在于,Web服务提供的信息是软件而不是人类消耗的。结果,我们通常谈论的是公开的JSON,XML或SOAP服务。
Web服务是“混搭”中的关键组件。混搭是指将来自许多网站的信息自动汇总到一项新的有用服务中。例如,有些网站将Google Maps与有关警察报告的信息聚合在一起,以图形方式表示您所在地区的犯罪。混搭的另一种类型是获取另一个站点提供的真实股票数据,并将其与虚假交易应用程序结合以创建股票市场“游戏”。
Web服务还用于提供新闻(请参阅RSS),添加到站点的最新项目,有关新产品的信息,播客,以及使现代Web转变的其他重要功能。
希望这可以帮助!
对于大多数网站,您都有使用浏览器时访问的HTML页面。这些是人类可读的页面(一旦在浏览器中呈现),其中很多数据可能会塞满在一起,因为这对人类来说很有意义。
现在想象其他人想要使用其中一些数据。他们可以下载您的页面并开始过滤掉所有“噪音”以获得所需的数据,但是大多数网站的构建方式并不是将所有元素的数据100%确定放置在同一位置,因此除此之外麻烦的是,它也变得不可靠。
输入Web服务。
Web服务是网站选择提供给希望从您的网站读取,更新和/或删除数据的用户的服务。您可以将其称为数据的“后门”。它不是以预定的方式将数据显示为网页的一部分,而是以预定的方式提供的,其中更流行的是XML和JSON。与Web服务通信的方式有几种,其中一些使用SOAP,另一些具有REST'ful Web服务,等等。
所有Web服务的共同点是它们等同于该站点提供的网页的机器可读性。这意味着希望使用数据的其他人可以发送请求,以取回易于解析和使用的某些数据。有些站点可能要求您在请求中提供用户名/密码以获取敏感数据,而其他站点则允许任何人提取他们可能需要的任何数据。
Web服务是用于在应用程序或系统之间交换数据的开放协议和标准的集合。用各种编程语言编写并运行在各种平台上的软件应用程序可以使用Web服务,以类似于单个计算机上的进程间通信的方式,通过计算机网络(如Internet)交换数据。这种互操作性(例如,在Java和Python之间,或Windows和Linux应用程序之间)是由于使用开放标准(XML,SOAP,HTTP)所致。
所有标准Web服务都使用以下组件工作:
它的工作原理如下:
Web服务是一种技术,通过该技术,两个或多个远程Web应用程序可以通过网络/互联网相互交互。可以使用Java,.net,PHP等实现。
Web服务的功能:-
好,
正如@Vincent Ramdhanie所说的那样,网络服务并不是要让最终用户看到/使用的,而是另一个程序。因此,从技术上讲,您程序中的逻辑将是:
在作为正常程序的情况下
user on website -> HTML/JS/JQuery etc -> give me a random number ->ur program
现在
ur program -> generate random number -> generate HTML and encapsulate o/p -> go back to user
但是如果使用Web服务,流程会有所变化:
user -> my application -> XML/JSON/some other format -> give me a random number ->ur program
现在
ur program -> generate random number -> generate XML/JSON/some other format -> my application -> generate HTML and encapsulate o/p -> go back to user
希望这可以帮助 :)