初次接觸express框架

丹_呆呆發表於2018-10-26

以官網bear例子入手

首先開啟例子可以看到目錄結構

初次接觸express框架
由官網解釋可知

  • bear.js檔案下就是建立我們的bear模組

  • 在node_models/是通過npm install建立的我們需要的依賴。
    //按ctrl+alt+O即可調出控制檯console

  • 下載好了依賴,可通過package.json檢視

    初次接觸express框架
    zaipackage.json中,我們能看到有三個依賴,那他們是做什麼用的呢?
    首先,express是後端nodejs的一個框架
    mongoose是連結資料庫一個ORM(即描述描述物件和資料庫對映關係的後設資料,將程式中的物件自動持久化到關聯式資料庫中) body-parser可以從前端HTTP的請求中提取post內容

  • 在server.js檔案中,就可以配置app、路由以及API介面

定義bear模組,併為它提供一個名稱欄位

初次接觸express框架
在bear.js檔案中引入mongoose包,為bear模組定義一個字串的欄位型別名字. module.exports是模組介面,宣告這個模組對外暴露什麼內容,這種方法可以返回全域性共享的變數或者方法

nodejs內容的開始就在server.js,那我們開啟server.js,正式開始寫後端

初次接觸express框架
在這個BASE SETUP部分,我們引入了需要用的package
其中,body-parser是一個**HTTP請求體解析中介軟體*,使用這個模組可以解析JSON、Raw、文字、URL-encoded格式的請求體,Express框架中就是使用這個模組做為請求體解析中介軟體。、

設定埠

初次接觸express框架
為了滿足正式環境中的node服務的埠啟動需求,有時候需要用到port環境變數,此時就需要在node啟動時。設定process.env.PORT。
process.env.PORT:讀取當前目錄下環境變數port的值

一般來說我們都是用8080埠,當埠被佔用時我們也可以用8081、8082等。(後期會出一個關於常見的埠被佔用事件的整理訂正合集)

初次接觸express框架
之後的這條語句,是用來連線我們的MongoDB資料庫 mongoose。connect內的引數是訪問本機網站的地址,我們可以通過Robo 3T進行檢視自己的本機地址
初次接觸express框架
所以引數可以寫成

mongoose.connect('mongodb://localhost/27017'); // connect to our database
複製程式碼

大家還記得我們在bear.js裡定義的bear模組嗎?現在我們可以引用了!

初次接觸express框架
現在我們的bear模組已經被引入進來了,接下來我們可以設定我們的路由了,這些路由將會定義我們的API介面。

初次接觸express框架
如上,我們需要先定義一個路由的例項,以便處理我們所有的路由。
然後我們要宣告一箇中介軟體

router.use(function())
複製程式碼

使用中介軟體十分的重要,可以驗證請求中的資訊,來保證資料是安全可靠的,當報錯時,我們還可以throw error. 而且express4.0版本進行了優化,使用這條命令,可以確保路徑按照被列出的順序執行。
返回資訊時是以JSON資料的方法,這是API的標準。 通過列印”Something is happing“來測試中介軟體執行。

next()
複製程式碼

這條語句的含義是使其他路由在執行時這條不會停止。

初次接觸express框架
在程式碼底部註冊路由,其他路由都預設帶有/api

使用POST請求建立bear

初次接觸express框架
如上,我們建立了一個新的路由,用來傳送post請求來創造一個bear:

  • 從bear模組中建立一個例項
  • 從請求中獲得bear的資訊(姓名)賦給bear.name
  • 儲存bear,檢測併傳送錯誤
  • 返回資訊“massage:‘Bear created’”

現在我們為app建立了post的路由,我們還可以用

router。route()
複製程式碼

去處理同一條URL的多條路由,我們可以處理以/bear結尾的所有請求

用Postman檢測

初次接觸express框架

通過:bear_id 來獲取具體bear

程式碼如下:

初次接觸express框架

涵蓋API所需的所有路由

初次接觸express框架

相關文章