posts - 19, comments - 53, trackbacks - 0, articles - 283
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          HTTP 通信過(guò)程

          Posted on 2009-05-14 14:30 Gavin.lee 閱讀(353) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): web 積累(前端 + 后臺(tái))

          這邊文章還是以前寫(xiě)的,最近又看到了,呵呵,刪掉也可惜了,貼在這里就當(dāng)紀(jì)念吧。
          HTTP
          通信機(jī)制是在一次完整的HTTP通信過(guò)程中,Web瀏覽器與Web服務(wù)器之間將完成下列7個(gè)步驟

          (1)    建立TCP連接

               在HTTP工作開(kāi)始之前,Web瀏覽器首先要通過(guò)網(wǎng)絡(luò)與Web服務(wù)器建立連接,該連接是通過(guò)TCP來(lái)完成的,該協(xié)議與IP協(xié)議共同構(gòu)建Internet,即著名的TCP/IP協(xié)議族,因此Internet又被稱(chēng)作是TCP/IP網(wǎng)絡(luò)。HTTP是比TCP更高層次的應(yīng)用層協(xié)議,根據(jù)規(guī)則,只有低層協(xié)議建立之后才能,才能進(jìn)行更層協(xié)議的連接,因此,首先要建立TCP連接,一般TCP連接的端口號(hào)是80

          -

          (2)    Web瀏覽器向Web服務(wù)器發(fā)送請(qǐng)求命令

               一旦建立了TCP連接,Web瀏覽器就會(huì)向Web服務(wù)器發(fā)送請(qǐng)求命令

          例如:GET/sample/hello.jsp HTTP/1.1

          -

             (3) Web瀏覽器發(fā)送請(qǐng)求頭信息

               瀏覽器發(fā)送其請(qǐng)求命令之后,還要以頭信息的形式向Web服務(wù)器發(fā)送一些別的信息,之后瀏覽器發(fā)送了一空白行來(lái)通知服務(wù)器,它已經(jīng)結(jié)束了該頭信息的發(fā)送。

          -

          (4)    Web服務(wù)器應(yīng)答

               客戶機(jī)向服務(wù)器發(fā)出請(qǐng)求后,服務(wù)器會(huì)客戶機(jī)回送應(yīng)答,

                HTTP/1.1 200 OK

               應(yīng)答的第一部分是協(xié)議的版本號(hào)和應(yīng)答狀態(tài)碼

          -

          (5)    Web服務(wù)器發(fā)送應(yīng)答頭信息

               正如客戶端會(huì)隨同請(qǐng)求發(fā)送關(guān)于自身的信息一樣,服務(wù)器也會(huì)隨同應(yīng)答向用戶發(fā)送關(guān)于它自己的數(shù)據(jù)及被請(qǐng)求的文檔。

          -

          (6)    Web服務(wù)器向?yàn)g覽器發(fā)送數(shù)據(jù)

               Web服務(wù)器向?yàn)g覽器發(fā)送頭信息后,它會(huì)發(fā)送一個(gè)空白行來(lái)表示頭信息的發(fā)送到此為結(jié)束,接著,它就以Content-Type應(yīng)答頭信息所描述的格式發(fā)送用戶所請(qǐng)求的實(shí)際數(shù)據(jù)

          -

          (7)    Web服務(wù)器關(guān)閉TCP連接

               一般情況下,一旦Web服務(wù)器向?yàn)g覽器發(fā)送了請(qǐng)求數(shù)據(jù),它就要關(guān)閉TCP連接,然后如果瀏覽器或者服務(wù)器在其頭信息加入了這行代碼

          Connection:keep-alive

          TCP連接在發(fā)送后將仍然保持打開(kāi)狀態(tài),于是,瀏覽器可以繼續(xù)通過(guò)相同的連接發(fā)送請(qǐng)求。保持連接節(jié)省了為每個(gè)請(qǐng)求建立新連接所需的時(shí)間,還節(jié)約了網(wǎng)絡(luò)帶寬。

          主站蜘蛛池模板: 盐山县| 合阳县| 孟津县| 百色市| 江口县| 绥德县| 枝江市| 藁城市| 连城县| 东城区| 万年县| 宜良县| 杨浦区| 东至县| 炎陵县| 道孚县| 三亚市| 绥江县| 澄迈县| 宁明县| 谢通门县| 响水县| 方山县| 承德县| 印江| 吉首市| 平和县| 乌什县| 烟台市| 寿阳县| 沐川县| 土默特左旗| 门源| 公安县| 临洮县| 同江市| 奉新县| 金沙县| 平罗县| 高尔夫| 沽源县|