web应用程序和web服务

我们在建立网站服务时,有两种不同的web开发模式:

一、web应用程序(web application:web应用程序是透过http请求来存取web服务器的网页,或执行服务端网页技术的程序,例如:ASP,ASP.NET,JSP,PHP。

二、web服务(web services:透过通讯协定SOAP或RESTful api提供资料交换和工作分享,这也是一种web应用程序,只不过是透过web服务来执行。

web应用程序(web application

  web应用程序简单来说就是一组网页(包含html网页,图片和相关服务器网页技术文档)的集合,其主要功能是回应使用者的请求,并且与使用者进行互动。目前Internet拥有多种不同类型的web应用程序,如:网络银行,电子商务网站,搜索引擎,拍卖网站,论坛等。

  基本上,web应用程序就是一种web基础(web-based)的资讯处理系统,使用资讯处理模型建立的应用程序,分为资讯处理模型和资讯传递模型两种。

  资讯传递模型是传统web网站,所有资讯内容都是使用html语言撰写的静态html网页,我们可以直接使用网页编辑工具或html语言来建立网站内容,如图:

 

  使用者在浏览器的网址栏输入url网址后,透过http通讯协定取得web服务器的html网页。资讯传递模型的web服务器只是负责存储和传递html网页,并不进行额外处理,一般来说,使用者只能阅读网站提供的资料,并不能与网站进行互动。

  资讯处理模型主要目的是建立互动的web网站内容的web网站内容,web服务器的角色不单纯只是传递资料,而是一个完整资讯处理系统的执行平台,我们需要使用服务器端网页技术(程序是在web服务器执行的网页技术),例如:使用php技术建立的web应用程序,如下图所示:

  

  上述图例的输入部分,以php技术来说,就是html表单的栏位,例如:查询图书书号的栏位,在存储部分最常使用的是资料库,例如:网络商店的图书资料库。上图所示的是一般的处理过程,但因为现在的javascript和html5拥有存取本地资料库和档案的能力,现在的web应用程序并不一定需要有服务器,在浏览器也一样可以使用客户端网页技术来执行资讯处理模型的web应用程序,如使用Web SQL Database,Local Storage和Session Storage存储数据,用js计算处理数据等。

web服务(web services

  web服务是一种企业级的应用程序,可以透过Internet建立自动机制提供资料交换和工作分享等资源共享能力。web服务是使用简单和公开标准的通讯协定,并且提供低成本软件整合和资料分享能力。

  web服务的基础

  web服务提供一组通用服务,能够提供大量客户端来同时使用,这是一组以xml标签作为传递讯息的函数呼叫。客户端通过http传送函数呼叫给服务器,服务器用http将结果传回客户端,可以提供客户端更多的弹性,因为只需要传递函数呼叫的讯息就可以取得所需要的资讯。

  简单来说,web服务提供一组通用的远端函数呼叫(RPC,Remote Procedure Calls),可以让客户端使用函数呼叫来执行所需的服务。

  web服务的应用程序架构

  WEB服务的客户端和服务器是使用SOAP(Simple Object Access Protocol)通讯协定来进行通讯,一种结合xml标签讯息的通讯协定。web服务的应用程序架构如图所示:

  RESTful API

  RESTful是一种源于www的web应用架构,常常被用来描述使用xml或json等简单界面的web服务,而不是使用SOAP的传统web服务,基本上符合REST原则的系统就称为RESTful。RESTful API对比传统的web服务来说是属于一种轻量级的web服务,因为设计简单,而且提供弹性的回应形态,例如:xml或json。

 注:这是一本名为《跨平台Android iPhone程式开发 visual studio community cordova/phonegap jQuery Mobile》陈会安著书中的部分内容,经本人理解然后改掉了点内容,想要了解更多和了解原意请看书。

原文地址:https://www.cnblogs.com/yzw-carrie/p/5616615.html