圖解HTTP之構(gòu)建Web內(nèi)容的技術(shù)

1宛蚓、HTML

1.1六孵、Web頁面幾乎全由HTML構(gòu)建

HTML(HyperText Markup Language嵌削,超文本標(biāo)記語言)是為了發(fā)送Web上的超文本而開發(fā)的標(biāo)記語言吓歇。超文本是一種文檔系統(tǒng)一铅,可將文檔中任意位置的信息與其他信息(文本或圖片等)建立關(guān)聯(lián),即超鏈接文本典予。標(biāo)記語言是指通過在文檔的某部分穿插特別的字符串標(biāo)簽甜滨,用來修飾文檔的語言。我們把出現(xiàn)在HTML文檔內(nèi)的這種特殊字符串叫做HTML標(biāo)簽(Tag)瘤袖。平時我們?yōu)g覽的Web頁面幾乎全是使用HTML寫成的衣摩。由HTML構(gòu)成的文檔經(jīng)過瀏覽器的解析、渲染后捂敌,呈現(xiàn)出來的結(jié)果就是Web頁面艾扮。

1.2、HTML的版本

Tim Berents-Lee提出HTTP概念的同時占婉,還提出了HTML原型泡嘴。1993年在伊利諾伊大學(xué)的NCSA(The National Center for Supercomputing Applications,國家超級計算機(jī)應(yīng)用中心)發(fā)布了Mosaic瀏覽器(世界首個圖形界面瀏覽器程序)逆济,而能夠被Mosaic解析后的HTML酌予,統(tǒng)一標(biāo)準(zhǔn)后即作為HTML1.0發(fā)布。
目前的最新版本是HTML5.0標(biāo)準(zhǔn)奖慌,2014年10月28日作為W3C推薦標(biāo)準(zhǔn)發(fā)布抛虫。HTML5標(biāo)準(zhǔn)不僅解決了瀏覽器之間的兼容性問題,并且可把文本作為數(shù)據(jù)對待简僧,更容易復(fù)用建椰,動畫等效果也變得更生動。

1.3岛马、設(shè)計應(yīng)用CSS

CSS(Cascading Style Sheets棉姐,層疊樣式表)可以指定如何展現(xiàn)HTML內(nèi)的各種元素,屬于樣式表標(biāo)準(zhǔn)之一蛛枚。即使是相同的HTML文檔谅海,通過改變應(yīng)用的CSS脸哀,用瀏覽器看到的頁面外觀也會隨之改變蹦浦。CSS的理念就是讓文檔的結(jié)構(gòu)和設(shè)計分離,達(dá)到解耦的目的撞蜂。

2盲镶、動態(tài)HTML

1.讓W(xué)eb頁面動起來的動態(tài)HTML

所謂動態(tài)HTML(Dynamic HTML),是指使用客戶端腳本語言將靜態(tài)的HTML內(nèi)容變成動態(tài)的技術(shù)的總稱。鼠標(biāo)單擊點開的新聞蝌诡、Google Maps等可滾動的地圖就用到了動態(tài)HTML溉贿。
動態(tài)HTML技術(shù)是通過調(diào)用客戶端腳本語言JavaScript,實現(xiàn)對HTML的Web頁面的動態(tài)改造浦旱。利用DOM(Document Object Model宇色,文檔對象模型)可指定預(yù)發(fā)生動態(tài)變化的HTML元素。

2.更易控制HTML的DOM

DOM是用以操作HTML文檔和XML文檔的API(Application Programming Interface,應(yīng)用編程接口)宣蠕。使用DOM可以將HTML內(nèi)的元素當(dāng)作對象操作例隆,如取出元素內(nèi)的字符串、改變那個CSS的屬性等抢蚀,使頁面的設(shè)計發(fā)生改變镀层。通過調(diào)用JavaScript等腳本語言對DOM的操作,可以以更為簡單的方式控制HTML的改變皿曲。

3.Web應(yīng)用

1.通過Web提供功能的Web應(yīng)用

Web應(yīng)用是指通過Web功能提供的應(yīng)用程序唱逢。比如購物網(wǎng)站、網(wǎng)上銀行屋休、SNS坞古、BBS、搜索引擎和e-learning等劫樟。原本應(yīng)用HTTP協(xié)議的Web的機(jī)制就是對客戶端發(fā)來的請求绸贡,返回事前準(zhǔn)備好的內(nèi)容∫慊可隨著Web越來越普及听怕,僅靠這樣的做法已不足以應(yīng)對所有的需求,更需要引入由程序創(chuàng)建HTML內(nèi)容的做法虑绵。類似這種由程序創(chuàng)建的內(nèi)容稱為動態(tài)內(nèi)容尿瞭,而事先準(zhǔn)備好的內(nèi)容稱為靜態(tài)內(nèi)容,Web應(yīng)用則作用于動態(tài)內(nèi)容之上翅睛。

2.與Web服務(wù)器及程序協(xié)作的CGI

CGI(Common Gateway Interface声搁,通用網(wǎng)關(guān)接口)是指Web服務(wù)器在接收到客戶端發(fā)送過來的請求后轉(zhuǎn)發(fā)給程序的一組機(jī)制。在CGI的作用下捕发,程序會對請求內(nèi)容做出相應(yīng)的動作疏旨,比如創(chuàng)建HTML等動態(tài)內(nèi)容。使用CGI的程序叫做CGI程序扎酷,通常是用Perl檐涝、PHP、Ruby和C等編程語言編寫而成法挨。

3.因Java而普及的Servlet

Servlet是一種能在服務(wù)器上創(chuàng)建動態(tài)內(nèi)容的程序谁榜。Servlet是用Java語言實現(xiàn)的一個接口,屬于面向企業(yè)級Java(JavaEE凡纳,JavaEnterprise窃植,Edition)的一部分。之前提及的CGI荐糜,由于每次接到請求巷怜,程序都要跟著啟動一次葛超。因此一旦訪問量過大,Web服務(wù)器要承擔(dān)相當(dāng)大的負(fù)載延塑,而Servlet運(yùn)行在與Web服務(wù)器相同的進(jìn)程中巩掺,因此受到的負(fù)載較小。Servlet的運(yùn)行環(huán)境叫做Web容器或Servlet容器页畦。Servlet作為解決CGI問題的對抗技術(shù)胖替,隨Java一起得到普及。

4豫缨、數(shù)據(jù)發(fā)布的格式及語言

1.可擴(kuò)展標(biāo)記語言

XML(eXtensible Markup Language独令,可擴(kuò)展標(biāo)記語言)是一種可按應(yīng)用目標(biāo)進(jìn)行擴(kuò)展的通用標(biāo)記語言。旨在通過使用XML好芭,使互聯(lián)網(wǎng)數(shù)據(jù)共享變得更容易燃箭。XML和HTML都是從標(biāo)準(zhǔn)通用標(biāo)記語言SGML(Standard Generalized Markup)簡化而成。與HTML相比舍败,它對數(shù)據(jù)的記錄方式做了特殊處理招狸。和HTML一樣,使用標(biāo)簽構(gòu)成樹形機(jī)構(gòu)邻薯,并且可自定義擴(kuò)展標(biāo)簽裙戏。從XML文檔中讀取數(shù)據(jù)比起HTML更為簡單。由于XML的結(jié)構(gòu)基本上都是用標(biāo)簽分割而成的樹形結(jié)構(gòu)厕诡,因此通過語法分析器的解析功能解析XML結(jié)構(gòu)并取出數(shù)據(jù)元素累榜,可更容易地對數(shù)據(jù)進(jìn)行讀取。更容易地復(fù)用數(shù)據(jù)使得XML在互聯(lián)網(wǎng)上被廣泛接受灵嫌。

2.發(fā)布更新信息的RSS/Atom

RSS(簡易信息聚合壹罚,也叫聚合內(nèi)容)和Atom都是發(fā)布新聞或博客日志等更新信息文檔的格式的總稱。兩者都用到了XML

3.JavaScript衍生的輕量級易用JSON

JSON(JavaScript Object Notation)是一種以JavaScript(ECMAScript)的對象表示法為基礎(chǔ)的輕量級數(shù)據(jù)標(biāo)記語言寿羞。能夠處理的數(shù)據(jù)類型有false/null/true/對象/數(shù)組/數(shù)字/字符串猖凛,這七種類型。JSON讓數(shù)據(jù)更輕更純粹绪穆,并且JSON的字符串可被JavaScript輕易地讀入辨泳。當(dāng)初配合XML使用的Ajax技術(shù)也讓JSON的應(yīng)用變得更為廣泛。另外霞幅,其他各種語言也提供豐富的庫類漠吻,以達(dá)到輕便操作JSON的目的量瓜。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末司恳,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子绍傲,更是在濱河造成了極大的恐慌扔傅,老刑警劉巖耍共,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異猎塞,居然都是意外死亡试读,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門荠耽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來钩骇,“玉大人,你說我怎么就攤上這事铝量√纫伲” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵慢叨,是天一觀的道長纽匙。 經(jīng)常有香客問我,道長拍谐,這世上最難降的妖魔是什么烛缔? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮轩拨,結(jié)果婚禮上践瓷,老公的妹妹穿的比我還像新娘。我一直安慰自己亡蓉,他們只是感情好当窗,可當(dāng)我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著寸宵,像睡著了一般崖面。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上梯影,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天巫员,我揣著相機(jī)與錄音,去河邊找鬼甲棍。 笑死简识,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的感猛。 我是一名探鬼主播七扰,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼陪白!你這毒婦竟也來了颈走?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤咱士,失蹤者是張志新(化名)和其女友劉穎立由,沒想到半個月后轧钓,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡锐膜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年毕箍,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片道盏。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡而柑,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出荷逞,到底是詐尸還是另有隱情牺堰,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布颅围,位于F島的核電站伟葫,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏院促。R本人自食惡果不足惜筏养,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望常拓。 院中可真熱鬧渐溶,春花似錦、人聲如沸弄抬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽掂恕。三九已至拖陆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間懊亡,已是汗流浹背依啰。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留店枣,地道東北人速警。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像鸯两,于是被迫代替她去往敵國和親闷旧。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容