Mock.js拦截带参数的get请求

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:25   1504   0

用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': {
   }
})

加了正则后重新试过了发现有效了,当然

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP