我们在建立网站服务时,有两种不同的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

web应用程序和web服务相关推荐

  1. web应用程序和web网站_Web应用程序和移动应用程序的基本启动清单

    web应用程序和web网站 by Ben Cheng 通过本诚 Web应用程序和移动应用程序的基本启动清单 (The Essential Launch Checklist for Web Apps a ...

  2. web应用程序和web网站_Web应用程序中的泄露秘密

    web应用程序和web网站 环境变量变得疯狂:数据泄露结果 (Environment Variables Gone Wild: Data Breach Results) Information dis ...

  3. web应用程序和Web网站区别

    Vs2005和VS2008中都有建立web应用程序和Web网站,总搞的大家不知所戳. web应用程序可能是微软为了让程序员很好的从winform过渡到web开发而保留了.Web网站就完全要应用到web ...

  4. Web应用程序和Web网站

    在牛腩接近尾声调试代码时,有时调试半天也调不出个什么效果,无奈之举,先和源码对比一下,发现我的web层中每个网页下面多个aspx.designer.cs 文件(设计器文件),网上说有这个文件说明你这个 ...

  5. web应用程序与web网站的区别

    前言: 最近学习了与web编程相关的很多的基础知识,接下将是一系列的基础知识的对比学习,今天先简单的了解一下web应用程序与web网站的区别! 1.编译方式不一样 这个是我认为二者之间最大的区别了,首 ...

  6. web应用程序、web网站 区别

    相同点 1.都可以设计Asp.net 网页 2.都可以添加Asp.Net 文件夹(App_Browsers.App_Data.App_GlobalResources.App_LocalResource ...

  7. firebase 推送_如何使用Firebase向Web应用程序添加推送通知?

    firebase 推送 by Leonardo Cardoso 由莱昂纳多·卡多佐(Leonardo Cardoso) 如何使用Firebase向Web应用程序添加推送通知? (How to add ...

  8. 在Autodesk应用程序商店发布基于浏览器的Web应用程序

    你一定已经听说过Autodesk应用程序商店了,通过Autodesk应用程序商店,你可以免费下载或购买来自全球的优秀开发者发布的应用程序,来帮助你更快更方便的完成你的工作.而且作为开发者,您也可以在A ...

  9. 《黑客秘笈——渗透测试实用指南》—第2章2.4节Web应用程序的扫描

    本节书摘来自异步社区<黑客秘笈--渗透测试实用指南>一书中的第2章2.4节Web应用程序的扫描,作者[美]Peter Kim(彼得 基姆),更多章节内容可以访问云栖社区"异步社区 ...

最新文章

  1. 谢文睿:西瓜书 + 南瓜书 吃瓜系列 1. 一元线性回归
  2. git svn 一个疯(傻)子的想法
  3. Springboot 连接数据库
  4. 【SIP协议】学习初学笔记
  5. 文献记录(part15)--面向高维数据的聚类算法研究
  6. Web项目练习总结(错误校正篇)
  7. RUNOOB python练习题37 对一个序列的数进行排序
  8. 记一次YY笔试中卡住得知识点
  9. I00036 盈数(Abundant number)
  10. 基于libuv的TCP设计(二)
  11. 计算机一级安装包怎么升级,详细教您win7如何升级为sp1
  12. 华为eSight网络监控平台配置短信功能说明
  13. 长沙银行“三重奏”:“生态银行”的新玩法
  14. git 命令git 地址_5个高级Git命令来启动您的Git游戏
  15. 【物联网】物联网开发从入门到精通
  16. Bug 生命周期 中的 各个状态!
  17. flash builder (fb) 与flash professional cs6(fla) 联合调试
  18. Codeforces765F. Souvenirs
  19. VLC 推流的简单设置
  20. Android 隐藏手机虚拟按键

热门文章

  1. 餐饮界的传奇-陈明保:美国最火爆的餐饮项目幕后推手
  2. 【洛谷 P1046】[NOIP2005 普及组] 陶陶摘苹果 题解(比较)
  3. vue混合html,VueJS混合
  4. 用python 记账小程序_小会计记账 小程序 走一波
  5. 每次开机都应用计算机配置,电脑win10每次重新开机设置都会还原怎么回事
  6. css添加过渡色,CSS过渡与转换
  7. 程序员为何在相亲界炙手可热
  8. 快速理解LAN、WAN和WLAN的区别? -- 转载
  9. mingw ,cygwin,msys,mingw-w64,msys2区别一句话总结。
  10. 论坛时代的落幕:松松论坛宣布正式关站