web應用程序和web服務

咱們在創建網站服務時,有兩種不一樣的web開發模式:javascript

1、web應用程序(web application:web應用程序是透過http請求來存取web服務器的網頁,或執行服務端網頁技術的程序,例如:ASP,ASP.NET,JSP,PHP。php

2、web服務(web services:透過通信協定SOAP或RESTful api提供資料交換和工做分享,這也是一種web應用程序,只不過是透過web服務來執行。html

web應用程序(web applicationhtml5

  web應用程序簡單來講就是一組網頁(包含html網頁,圖片和相關服務器網頁技術文檔)的集合,其主要功能是迴應使用者的請求,而且與使用者進行互動。目前Internet擁有多種不一樣類型的web應用程序,如:網絡銀行,電子商務網站,搜索引擎,拍賣網站,論壇等。java

  基本上,web應用程序就是一種web基礎(web-based)的資訊處理系統,使用資訊處理模型創建的應用程序,分爲資訊處理模型和資訊傳遞模型兩種。web

  資訊傳遞模型是傳統web網站,全部資訊內容都是使用html語言撰寫的靜態html網頁,咱們能夠直接使用網頁編輯工具或html語言來創建網站內容,如圖:json

 

 

  使用者在瀏覽器的網址欄輸入url網址後,透過http通信協定取得web服務器的html網頁。資訊傳遞模型的web服務器只是負責存儲和傳遞html網頁,並不進行額外處理,通常來講,使用者只能閱讀網站提供的資料,並不能與網站進行互動。api

  資訊處理模型主要目的是創建互動的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》陳會安著書中的部份內容,經本人理解而後改掉了點內容,想要了解更多和了解原意請看書。

相關文章
相關標籤/搜索