Mock.js攔截帶參數的get請求

用Mock.js模擬攔截前端的請求,發現對於post請求能正常攔截,但是對於get請求無法攔截到,網上百度了一下,發現是由於get請求傳遞了參數拼接在了url後面,而Mock.js只能攔截到不帶參數的url,比如

// 只能攔截到/api/materialList
Mock.mock('/api/materialList', 'get', {
  'status': '1',
  'errcode': '0',
  'errmsg': '成功',
  'data': {
   }
})

這個只能攔截到 '/api/materialList',如果我傳了參數,比如 '/api/materialList?type=1',只要不是完全匹配的就攔截不到,而post請求參數不是拼接在路徑裏的,能夠匹配到,所以要麼就是直接不傳參數就可以攔截到,另外如果一定要傳參數則可以加個正則進行匹配

Mock.mock(RegExp('/api/materialList' + '.*', 'get', {
  'status': '1',
  'errcode': '0',
  'errmsg': '成功',
  'data': {
   }
})

加了正則後重新試過了發現有效了,當然

發佈了21 篇原創文章 · 獲贊 2 · 訪問量 8100
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章