應(yīng)用不同模塊分析

2018-02-24 15:25 更新

我們來分解一下這個(gè)應(yīng)用,為了實(shí)現(xiàn)上文的用例,我們需要實(shí)現(xiàn)哪些部分呢?

  • 我們需要提供Web頁面,因此需要一個(gè)HTTP服務(wù)器
  • 對于不同的請求,根據(jù)請求的URL,我們的服務(wù)器需要給予不同的響應(yīng),因此我們需要一個(gè)路由,用于把請求對應(yīng)到請求處理程序(request handler)
  • 當(dāng)請求被服務(wù)器接收并通過路由傳遞之后,需要可以對其進(jìn)行處理,因此我們需要最終的請求處理程序
  • 路由還應(yīng)該能處理POST數(shù)據(jù),并且把數(shù)據(jù)封裝成更友好的格式傳遞給請求處理入程序,因此需要請求數(shù)據(jù)處理功能
  • 我們不僅僅要處理URL對應(yīng)的請求,還要把內(nèi)容顯示出來,這意味著我們需要一些_視圖邏輯_供請求處理程序使用,以便將內(nèi)容發(fā)送給用戶的瀏覽器
  • 最后,用戶需要上傳圖片,所以我們需要_上傳處理功能_來處理這方面的細(xì)節(jié)

我們先來想想,使用PHP的話我們會(huì)怎么構(gòu)建這個(gè)結(jié)構(gòu)。一般來說我們會(huì)用一個(gè)Apache HTTP服務(wù)器并配上mod_php5模塊。
從這個(gè)角度看,整個(gè)“接收HTTP請求并提供Web頁面”的需求根本不需要PHP來處理。

不過對Node.js來說,概念完全不一樣了。使用Node.js時(shí),我們不僅僅在實(shí)現(xiàn)一個(gè)應(yīng)用,同時(shí)還實(shí)現(xiàn)了整個(gè)HTTP服務(wù)器。事實(shí)上,我們的Web應(yīng)用以及對應(yīng)的Web服務(wù)器基本上是一樣的。

聽起來好像有一大堆活要做,但隨后我們會(huì)逐漸意識(shí)到,對Node.js來說這并不是什么麻煩的事。

現(xiàn)在我們就來開始實(shí)現(xiàn)之路,先從第一個(gè)部分--HTTP服務(wù)器著手。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)