# Huli - 用 API mocking 讓前端不再苦苦等待 {%hackmd hMEcK0feT16ZyuC04gKbRw %} ###### tags: `jsdc2020`, `上半場 - 道場` --- ## 現在常見的前後端分離  ## 該怎麼處理前端必須等待後端 API 好了才可以接的狀況? 如果後端連 interface 都還沒訂好! 無解...(通靈) ### 後端 API 還沒好的幾個方法 * 繼續等待 (跟後端產生嚴重 dependency) * Express 自己弄 * [JSON server](https://github.com/typicode/json-server) 假資料 * MSW(Mock Service Worker) * MirageJS ## [MSW (Mock Service Worker)](https://mswjs.io/) ### 特點 * 使用 service worker 實作 * 會真的發 request,因此在 Dev tool 上看的到 ### 設定步驟 * 加上 service worker * 加上 handler ### 好處 * 可以針對各種狀況寫測試 ### 缺點 * 設置較麻煩,適合放靜態資料 ## [MirageJS](https://miragejs.com/)  ### 特點 * request 不會真的發出去, Dev tool 上看不到 * 也可以寫測試 * 打造出完整的 mockAPI (CRUD) ### 好處 * 提供 ORM,提供一個精簡的 backend server(但沒有真正的 server) ### 缺點 * 需要較多時間 --- Q: mocking 的 interface 是由前端還是後端訂定? 網友A:誰大聲誰贏 網友B:先開先贏 Q: mirage.js 跟自己寫變數的差別在哪? mirage 提供內建 ORM 幫你快速做這件事 --- 投影片 https://drive.google.com/file/d/1OOV55pClWtNBBM7StU7wepH39-UZb0lM/view demo 網址 https://github.com/aszx87410/api-mocking-demo-app
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up