天天看點

5分鐘教你用nodeJS手寫一個mock資料服務

5分鐘教你用nodeJS手寫一個mock資料服務

對于前端開發者而言,​<code>​javascript​</code>​正扮演者越來越重要的地位,它不僅能為浏覽器端賦能,在​<code>​web​</code>​伺服器方面也有很大的價值(我們可以用​<code>​nodejs​</code>​來寫服務端的應用,啟動​<code>​web​</code>​伺服器),是以本文所要描述的,便是​<code>​javascript​</code>​在服務端的應用。我們将介紹如何使用​<code>​nodejs​</code>​來搭建一個​<code>​mock​</code>​伺服器,友善前端自定義​<code>​mock​</code>​資料請求,提高前端開發者的主觀能動性和對項目健壯性的探索。

我們将學到

koa基本使用

koa-router的基本用法

koa-logger的使用

glob支援檔案周遊查詢

node幾個核心api的使用

使用nodemon做自動重新開機

mock伺服器基本設計思路

通過目錄路徑和服務端​<code>​api​</code>​的映射關系來實作我們的​<code>​api​</code>​通路,比如我們通路接口​<code>​/api/article/122​</code>​,我們隻需要在​<code>​mock​</code>​伺服器目錄的​<code>​api​</code>​的​<code>​article​</code>​目錄下,建立​<code>​122.json​</code>​檔案即可,​<code>​json​</code>​檔案的資料可以自定義,友善前端調試。

具體實作搭建一個​<code>​node​</code>​服務

注冊路由,我們使用​<code>​koa-router​</code>​來實作背景服務的路由功能,并通過​<code>​koa​</code>​提供的上下文​<code>​ctx​</code>​将讀取到的資料傳回給前端;

這樣我們就能實作一個勉強能用的基本的背景​<code>​api​</code>​伺服器,當我們請求了​<code>​/api/name​</code>​時,會傳回相應的資料給前台,這一步是我們實作​<code>​mock​</code>​服務的關鍵一步,接下來我們具體來實作目錄的周遊和​<code>​api​</code>​的自動注冊。

自動注冊​<code>​api​</code>​接口并傳回資料,我們将在這個階段實作​<code>​api​</code>​服務的自動注冊,這裡我們使用​<code>​glob​</code>​這個第三方子產品來周遊目錄,并通過​<code>​node​</code>​的​<code>​fs​</code>​子產品讀取​<code>​api​</code>​檔案的資料并傳回給前端。

添加控制台日志,我們使用​<code>​koa-logger​</code>​實作在終端列印​<code>​node​</code>​日志,友善調試,雖然這不是該文章的重點,但是對于想做​<code>​node​</code>​開發的前端從業者,還是很有必要了解的。

這樣,我們每個請求都會在終端列印出來。

路由映射檔案的生成,該功能也不是本文的重點,但是會極大的友善前端開發者調試請求,因為如果​<code>​api​</code>​路徑很長,我們需要一個個查找,但是有了這個​<code>​map​</code>​檔案,我們隻需要拷貝自動生成的路由即可。

以上代碼中用到了很多的第三方子產品,如果在​<code>​require('xxx')​</code>​的時候沒有提示,或者運作代碼相應的​<code>​require​</code>​語句報錯,就​<code>​npm install xxx --save​</code>​一下。

微信公衆号:code程式人生

5分鐘教你用nodeJS手寫一個mock資料服務

繼續閱讀