mock拦截ajax请求,Mock.js 生成随机数据 拦截 Ajax 请求 - 文章教程

前端开发过程中,总是会有一些 Ajax 请求,之前的做法是自己新建一些 JSON 文件,然后访问本地的文件,这么做有个很大的问题就是不够灵活,而且还需要频繁切换 url,现在有了 Mock.js 拦截 Ajax 请求,就更加方便的构造你需要的假数据。

54c2859b8f98cf4405c0ac506dbdde00.png

特点

前后端分离

让前端攻城师独立于后端进行开发。

增加单元测试的真实性

通过随机数据,模拟各种场景。

开发无侵入

不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据。

用法简单

符合直觉的接口。

数据类型丰富

支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等。

方便扩展

支持支持扩展更多数据类型,支持自定义函数和正则。

使用方法

1、安装 Mockjs

npm install mockjs --save-dev

2、在项目中创建 mock.js,并写一个简单的返回示例:

// 引入 mockjs

import Mock from 'mockjs'

// 使用 mockjs模拟数据

Mock.mock('/api/proxy/query', {

"ret":0,

"data":{

"mtime": "@datetime",//随机生成日期时间

"score|1-800": 800,//随机生成1-800的数字

"rank|1-100": 100,//随机生成1-100的数字

"stars|1-5": 5,//随机生成1-5的数字

"nickname": "@cname",//随机生成中文名字

}

});

3、main.js 里面引入该文档

import './js/mock'

4、vue 文件中调用 mock.js 中模拟的数据接口,这时返回的 response 就是 mock.js 中用 Mock.mock(‘url, data) 中设置的 data 了。

var url = '/api/proxy/query';

this.$axios.get(url).then(response => {

// code

}).catch(error => {

// code

})

设置延时返回数据

任何 API 的请求都是有延迟,所以为了增加真实性,我们可以设置一定的延迟返回数据

//延时400s请求到数据

Mock.setup({

timeout: 400

})

//延时200-600毫秒请求到数据

Mock.setup({

timeout: '200-600'

})

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值