以官網bear例子入手
首先開啟例子可以看到目錄結構
由官網解釋可知-
bear.js檔案下就是建立我們的bear模組
-
在node_models/是通過
npm install
建立的我們需要的依賴。
//按ctrl+alt+O
即可調出控制檯console -
下載好了依賴,可通過package.json檢視
zaipackage.json中,我們能看到有三個依賴,那他們是做什麼用的呢?
首先,express是後端nodejs的一個框架
mongoose是連結資料庫一個ORM(即描述描述物件和資料庫對映關係的後設資料,將程式中的物件自動持久化到關聯式資料庫中) body-parser可以從前端HTTP的請求中提取post內容 -
在server.js檔案中,就可以配置app、路由以及API介面
定義bear模組,併為它提供一個名稱欄位
在bear.js檔案中引入mongoose包,為bear模組定義一個字串的欄位型別名字. module.exports是模組介面,宣告這個模組對外暴露什麼內容,這種方法可以返回全域性共享的變數或者方法nodejs內容的開始就在server.js,那我們開啟server.js,正式開始寫後端
在這個BASE SETUP部分,我們引入了需要用的package其中,body-parser是一個**HTTP請求體解析中介軟體*,使用這個模組可以解析JSON、Raw、文字、URL-encoded格式的請求體,Express框架中就是使用這個模組做為請求體解析中介軟體。、
設定埠
為了滿足正式環境中的node服務的埠啟動需求,有時候需要用到port環境變數,此時就需要在node啟動時。設定process.env.PORT。process.env.PORT:讀取當前目錄下環境變數port的值
一般來說我們都是用8080埠,當埠被佔用時我們也可以用8081、8082等。(後期會出一個關於常見的埠被佔用事件的整理訂正合集)
之後的這條語句,是用來連線我們的MongoDB資料庫 mongoose。connect內的引數是訪問本機網站的地址,我們可以通過Robo 3T進行檢視自己的本機地址 所以引數可以寫成mongoose.connect('mongodb://localhost/27017'); // connect to our database
複製程式碼
大家還記得我們在bear.js裡定義的bear模組嗎?現在我們可以引用了!
現在我們的bear模組已經被引入進來了,接下來我們可以設定我們的路由了,這些路由將會定義我們的API介面。 如上,我們需要先定義一個路由的例項,以便處理我們所有的路由。然後我們要宣告一箇中介軟體
router.use(function())
複製程式碼
使用中介軟體十分的重要,可以驗證請求中的資訊,來保證資料是安全可靠的,當報錯時,我們還可以throw error.
而且express4.0版本進行了優化,使用這條命令,可以確保路徑按照被列出的順序執行。
返回資訊時是以JSON資料的方法,這是API的標準。
通過列印”Something is happing“來測試中介軟體執行。
next()
複製程式碼
這條語句的含義是使其他路由在執行時這條不會停止。
在程式碼底部註冊路由,其他路由都預設帶有/api使用POST請求建立bear
如上,我們建立了一個新的路由,用來傳送post請求來創造一個bear:- 從bear模組中建立一個例項
- 從請求中獲得bear的資訊(姓名)賦給bear.name
- 儲存bear,檢測併傳送錯誤
- 返回資訊“massage:‘Bear created’”
現在我們為app建立了post的路由,我們還可以用
router。route()
複製程式碼
去處理同一條URL的多條路由,我們可以處理以/bear結尾的所有請求
用Postman檢測
通過:bear_id 來獲取具體bear
程式碼如下:
涵蓋API所需的所有路由