構建 Web 內容的技術
1. HTML
1.1 Web 頁面幾乎全由 HTML 構建
HTML(HyperText Markup Language,超文本標記語言)是為了發送 Web 上的超文本(HyperText)而開發的標記語言。平時我們瀏覽的 Web 頁面幾乎全是使用 HTML 編寫的,由 HTML 構成的文檔經瀏覽器的解析、渲染后,呈現出來的結果就是 Web 頁面。
1.2 HTML 版本
HTML 1.0 在 1993 年由伊利諾伊大學的 NCSA 統一標準后發布。
HTML5 在 2014 年正式推薦并使用。HTML 5 標準不僅解決了瀏覽器之間的兼容性問題,并且可以把文本作為數據對待,更容易復用,動畫效果也變得更生動。
1.3 設計應用 CSS
CSS(Cascading Style Sheets,層疊樣式表)可以指定如何展現 HTML 內的各種元素,屬于樣式標準之一。
CSS 的理念就是讓文檔的結構和設計分離,達到解耦的目的。
2. 動態 HTML
2.1 讓 Web 頁面動起來的動態 HTML
所謂動態 HTML(Dynamic HTML),是指使用客戶端腳本語言將靜態的 HTML 內容變成動態的技術的總稱。
動態 HTML 技術是通過調用客戶端腳本語言 JavaScript ,實現對 HTML 的 Web 頁面的動態改造。
利用 DOM(Doucment Object Model,文檔對象模型)可指定欲發生動態變化的 HTML 元素。
2.2 更容易控制 HTML 的 DOM
DOM 是用以操作 HTML 文檔和 XML 文檔的 API。使用 DOM 可以將 HTML 內容的元素當作對象操作。如取出元素內的字符串、改變那個 CSS 的屬性等,使頁面的設計發生改變。
通過調用 JavaScript 等腳本語言對 DOM 的操作,可以以更為簡單的方式控制 HTML 的改變。
DOM 內存在各種函數,使用他們可查閱 HTML 中的各個元素。
3. Web 應用
3.1 通過 Web 提供功能的 Web 應用
Web 應用是指通過 Web 功能提供的應用程序。如購物網站、網上銀行、搜索引擎等。
由程序創建的內容稱為動態內容,而實現準備好的內容稱為靜態內容。 Web 應用則作用于動態內容之上。
3.2 與 Web 服務器及程序協作的 GCI
CGI(Common Gateway Interface,通用網關接口)是指 Web 服務器在接收到客戶端發送過來的請求后轉發給程序的一組機制。在 CGI 的作用下,程序會對請求內容做出相應的動作,如創建 HTMl 等動態內容。
使用 CGI 的程序叫做 CGI 程序,通常是用 Perl、PHP、Ruby 和 C 等編程語言編寫而成。
3.3 因 Java 而普及的 Servlet
Servlet 是一種能在服務器上創建動態內容的程序,Servlet 是用 Java 語言實現的一個接口,屬于面向企業級 Java 的一部分。
CGI 由于每次接收到請求,程序都有跟著啟動一次。因此一旦訪問量過大,Web 服務器就要承擔相當大的負載。
Servlet 運行在與 Web 服務器相同的進程中,因此收到的負載較小。Servlet 運行的環境叫做 Web 容器或 Servlet 容器。
4. 數據發布的格式及語言
4.1 可擴展的標記語言
XML (eXtensible Markup Language,可擴展標記語言)是一種可按應用目標進行擴展的通用標記語言。旨在通過使用 XML,是互聯網數據共享變得更加容易。
XML 和 HTML 一樣,使用標簽構成樹形結構,并且可自定義擴展標簽。
從 XML 文檔中讀取數據比起 HTML 更為簡單。由于 XML 的結構基本上都是用標簽分割而成的樹形結構,因此通過語法分析器(Parser)的解析功能解析 XML 結構并取出數據元素,可更容易的對數據進行讀取。
4.2 發布更新信息的 RSS/Atom
RSS(簡易信息聚合,也叫聚合內容)和 Atom 都是發布新聞或博客日志等更新信息文檔的格式的總稱。兩者都用到了 XML。
RSS 有以下版本:
RSS 0.9(RDF Site Summary): 最初的 RSS 版本。
RSS 0.91(Rich Site Summary): 在 RSS0.9的基礎上擴展元素。非 RDF 規格,使用 XML 方式編寫。
RSS 1.0(RDF Site Summary): RSS規格正處于混亂狀態。
RSS 2.0(Really Simple Syndication): 非 RSS 1.0 路線。增加支持 RSS0.91 的兼容性。
Atom 具有以下兩種標準。
Atom 供稿格式(Atom Syndication Format):為發布內容而制定的網站消息來源格式。
Atom 出版協定(Atom Publishing Protocol): 為 Web 上內容的新增或修改而制定的協議。
4.3 JavaScript 衍生的輕量級醫用 JSON
JSON(JavaScript Object Notation)是一種以 JavaScript 的對象表示法為基礎的輕量級數據標記語言。
能夠處理的數據類型有 false/null/true/對象/數組/數字/字符串 這 7 種類型。
示例:
{"name": "Web Application Security", "num": "TR001"}