RESTful Post 亦為實務上都會碰到的 API,這種 API 該如何 Mock 呢 ?
Version
MSW 0.28.2
API Function
api/login.js
import axios from 'axios'
export default body => axios.post('/login', body)
使用 axios.post()
呼叫 API。
Mock Function
mock/login.js
import { rest } from 'msw'
export default rest.post('/login', (req, res, ctx) => {
let { id, password } = req.body
return res(
ctx.status(200),
ctx.json({
id,
password
})
)
})
第 3 行
export default rest.post('/login', (req, res, ctx) => {
改用 rest.post()
mock API。
第 4 行
let { id, password } = req.body
從 req.body
解構出 body 內資料。
Conclusion
- 透過
req.body
可解構出 body 內資料,進而根據 body 可回傳不同資料