今天我们来聊聊Mock
,随着互联网发展,这两年前后端分离的开发模式兴起,Mock 也从以住的幕后走上了台面,让更多的人而得知,以前传统的开发方式 Mock 大多局限在后端人员接触较多一些。
Mock
已经是老生常谈了,网上一搜索就很多,各位前辈们都讲的很到位,但今天我只讲它——easy-mock。
为什么会突然来聊它,这个就说来话长了,个人简介里就说过,专注于分享工作中遇到的坑,但这一次不是我的坑,来源于 QQ 群友(#
如果您有想知道的故事,而正好我也会,那么就由我为您讲出来吧,欢迎留言哦 #
),请看下图:
什么是 Mock?? Mock
其实就是真实数据存在之前,即调试期间的代替品,是个虚拟的存在,用人话讲它就是个备胎,如女生长的好看,追她的人多,但又不是很满意但也不拒绝,在自己心仪的小哥哥出现之前,一直吊着你😂!
new
一个哦,对象可以 new
,备胎可new
不出来呢🤫;Charles
、Fiddler
等代理工具,将 URL 映射到本地文件;nodemon
能解决,但开的东西多了,电脑卡出翔,维护也麻烦;easy-mock
一个在线 Mock
平台,活儿好又性感是你备胎的最佳选择。//mock 基本使用示例
import Mock from "mockjs";
Mock.mock({
"code": 0,
"message": "请求成功",
"data|20": [{
"name": "@cname",//cname 中文,name 英文
"userId": "@id",
"lastDate": "@datetime"
}]
})
Swagger
创建项目,以节省手动创建接口的时间;备胎
没有之一,完全不用担心负任何责任哦。团队协作
,也可以是个人项目,size
, background
, foreground
, format
, text
;Easy Mock
创建一个接口,请看下图:function
,ES6
,function
里要写传出Mock
对象,不能直接@...
,| 对象 | 描述 |
| -------- | ----------------- |
| Mock | Mock 对象 |
| _req.url | 获得请求 url 地址 |
| _req.method | 获取请求方法 |
| _req.params | 获取 url 参数对象 |
| _req.querystring | 获取查询参数字符串(url 中?后面的部分),不包含 ? |
| _req.query | 将查询参数字符串进行解析并以对象的形式返回,如果没有查询参数字字符串则返回一个空对象 |
| _req.body | 当 post 请求以 x-www-form-urlencoded 方式提交时,我们可以拿到请求的参数对象 |
| ... | _req.cookies、ip、host 等等,我只是一个代码的搬运
,更详细请看这里 |
//简单模拟登录,根据用户传入的参数,返回不同逻辑数据
{
defaultName:function({_req}){
return _req.query.name;
},
code: function({_req}){
return this.defaultName ? 0 : -97;
},
message: function({_req}) {
return this.defaultName ? "登录成功" : "参数错误";
},
data: function({_req,Mock}){
return this.defaultName ? {
token: Mock.mock("@guid()"),
userId: Mock.mock("@id(5)"),
cname: Mock.mock("@cname()"),
name: Mock.mock("@name()"),
avatar: Mock.mock("@image(200x100, #FF6600)"),
other:"@IT·平头哥联盟-首席填坑官∙苏南 带你再谈 Mock 数据之 easy-mock"
}:{}
}
}
Bug
,Easy Mock
它是真的懂你的,已经为你准备好了,接口编写好后,立马就能让你测试,天下无不散之宴席,又到说再见的时候了,以上就是今天苏南
为大家带来的分享,您 GET 到了吗?Easy Mock
更多强大之处自己去折腾吧,#
用心分享 做有温度的攻城狮#
,希望今天的分享能给您带来些许成长,如果觉得不错记得点个赞哦,,顺便关注下方公众号就更棒了呢,每周为您推最新分享👇👇。
作者:苏南 - 首席填坑官 链接: https://blog.csdn.net/weixin_43254766 交流群:912594095、公众 H:
honeyBadger8
本文原创,著作权归作者所有。商业转载请联系@IT·平头哥联盟
获得授权,非商业转载请注明原链接及出处。