Mock 实践
需求和开端
想找一个模拟数据的库,看了一些其他项目,都用的Mockjs
。
今天npm下好发现package.json
警告
GHSA-mh8j-9jvh-gjf6
mockjs vulnerable to Prototype Pollution via the Util. extend functionmockjs 容易通过Util受到原型污染。
What the hell ???
赶紧爬上issue
看看怎么个事,然后看到前辈老哥的温柔话语
一看提交,十年前、六年前额
继续翻,有人建议使用Mockm
,然后一查,发现Apifox
也支持mock
看了眼Mockm
,理念确实不错,但因为后端就有现成的apifox文档,所以决定直接使用apifox
其实Apifox看着更先进
对比
对比维度 | Apifox Mock | Mock.js |
---|---|---|
产品定位 | 全流程 API 管理工具(集成文档、调试、Mock、测试)16 | 前端数据模拟库(仅生成随机数据)15 |
Mock 规则生成 | 可视化定义字段规则,智能匹配数据类型(如邮箱、手机号)48 | 需手动编写数据模板,依赖代码实现15 |
协作能力 | 支持团队实时协作,Mock 数据与接口文档自动同步36 | 仅限本地使用,无协作功能14 |
环境支持 | 支持本地/云端 Mock 切换,内置鉴权机制46 | 仅限本地开发环境15 |
扩展性 | 支持 Nunjucks 脚本、自定义脚本及 Mock.js 语法258 | 依赖 Mock.js 原生语法,灵活性高但需编码实现复杂逻辑15 |
自动化能力 | 与自动化测试、性能测试联动,支持 CI/CD 集成16 | 仅生成数据,需搭配其他工具完成测试13 |
学习成本 | 低(可视化操作,零代码配置)48 | 较高(需熟悉 JavaScript 及 Mock.js 语法)57 |
适用场景 | 中大型团队协作、全生命周期 API 管理16 | 个人或小型项目快速生成静态数据15 |
安全性 | 支持鉴权、IP 白名单等安全策略46 | 无内置安全机制1 |
维护成本 | 接口修改后 Mock 规则自动更新48 | 需手动同步接口变更15 |
Apifox 文档
https://docs.apifox.com/?nav=1
场景搭建
平时简单场景搭建示例
项目设置Mock地址
我的项目是通过dotenv注入到vite.config.ts
的proxy设置上
登录
- 期望里选择哪一项等于哪一项不等于就行
- Header新建
Set-Cookie
可以给客户端设置Cookie
文章作者:xChenNing
文章链接:https://blog.glcn.top/archives/mock-shi-jian
版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0 许可协议,转载请注明出处!
评论