以官網bear例子入手
首先開啟例子可以看到目錄結構
![初次接觸express框架](https://i.iter01.com/images/21afed80ebddca870c3dc2bde69e51f719fb6268a53ce7ae1b38cd0acbafb987.png)
-
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模組,併為它提供一個名稱欄位
![初次接觸express框架](https://i.iter01.com/images/df4c7afea487e0b70bddf83ff653aeb414b05a483533d827f4df78a415f54c7d.png)
nodejs內容的開始就在server.js,那我們開啟server.js,正式開始寫後端
![初次接觸express框架](https://i.iter01.com/images/b157a2c5f94dfef71b5ab87cde5b6e0d243c3befae18845248aaf8a45c76e33a.png)
其中,body-parser是一個**HTTP請求體解析中介軟體*,使用這個模組可以解析JSON、Raw、文字、URL-encoded格式的請求體,Express框架中就是使用這個模組做為請求體解析中介軟體。、
設定埠
![初次接觸express框架](https://i.iter01.com/images/d6038bf01b9fde569d17d8631d67bc27347251310b54ddd27462c2efcc160633.png)
process.env.PORT:讀取當前目錄下環境變數port的值
一般來說我們都是用8080埠,當埠被佔用時我們也可以用8081、8082等。(後期會出一個關於常見的埠被佔用事件的整理訂正合集)
![初次接觸express框架](https://i.iter01.com/images/6b46d1936df29bee2a606d604ebf5bd41de854e0b4594710a36eea5b287e1efb.png)
![初次接觸express框架](https://i.iter01.com/images/54f9df6c92367ea697c0a070416e8a0ab88b08bca9deb21b63e540c1ae8b9898.png)
mongoose.connect('mongodb://localhost/27017'); // connect to our database
複製程式碼
大家還記得我們在bear.js裡定義的bear模組嗎?現在我們可以引用了!
![初次接觸express框架](https://i.iter01.com/images/527169176bdd781bb8609382728e8cac3645c4f7c8afcc1cc7efdaa05625e2cb.png)
![初次接觸express框架](https://i.iter01.com/images/157de31cba6470014151ec5c3fffb1ed2c45f7a8a6548ba73efcbc83502c183a.png)
然後我們要宣告一箇中介軟體
router.use(function())
複製程式碼
使用中介軟體十分的重要,可以驗證請求中的資訊,來保證資料是安全可靠的,當報錯時,我們還可以throw error.
而且express4.0版本進行了優化,使用這條命令,可以確保路徑按照被列出的順序執行。
返回資訊時是以JSON資料的方法,這是API的標準。
通過列印”Something is happing“來測試中介軟體執行。
next()
複製程式碼
這條語句的含義是使其他路由在執行時這條不會停止。
![初次接觸express框架](https://i.iter01.com/images/22fb947b95cdbf81c983b61a52f3761e16316c44209629e95e970f5a41f54b50.png)
使用POST請求建立bear
![初次接觸express框架](https://i.iter01.com/images/9ff9fa559011d680237215185395bfd170e8b4b3c169b265d8742c5ad05bd0d7.png)
- 從bear模組中建立一個例項
- 從請求中獲得bear的資訊(姓名)賦給bear.name
- 儲存bear,檢測併傳送錯誤
- 返回資訊“massage:‘Bear created’”
現在我們為app建立了post的路由,我們還可以用
router。route()
複製程式碼
去處理同一條URL的多條路由,我們可以處理以/bear結尾的所有請求
用Postman檢測
![初次接觸express框架](https://i.iter01.com/images/f98accfae0013a25cd55345a2473eb74de25c1a484ea2d7119b2f1cc87245e8f.png)
通過:bear_id 來獲取具體bear
程式碼如下:
![初次接觸express框架](https://i.iter01.com/images/d9f028c1b324784d844bd1bdd1c4514a5c2abe5f72c206c8f018b44295d49975.png)
涵蓋API所需的所有路由
![初次接觸express框架](https://i.iter01.com/images/5bcbf09ec62563753a2003644cbfccda00a751337068132a595c75e451bbccc9.png)