上篇文章講述了怎麼用Node實現一個API服務
現在開始講述如何搭建一個好用的API Mock服務
達到的效果:
在開發環境中就可以在url後面添加?ismock=1
參數來實現數據mock,(沒有該參數就訪問正常數據),且不會對測試環境和生產環境造成任何影響
實現步驟:
-
通過Webpack設置代理。
//webpack.config.js proxy: { '/mock': { target: 'mock', changeOrigin:true, pathRewrite: { '^/mock': '' } } }
-
攔截請求(比如Axios自帶的攔截器)
- 判斷url參數(如
?ismock=1
) - 判斷當前環境(如
process.env.NODE_ENV == 'development'
) - 添加
baseUrl = /mock
- 判斷url參數(如
- 在webpack的壓縮處理中刪除不可達代碼(見webpack配置表)