当前位置: 首页 >文章 > 不用再等后端的接口啦!这个开源项目花 2 分钟就能模拟出后端接口
收藏
分享

不用再等后端的接口啦!这个开源项目花 2 分钟就能模拟出后端接口

举报小虎转载君小虎转载君发布于 2021-01-18736阅读0点赞
如果想真正使用这个开源项目 moco,建议参考官方文档去「实践」...


HelloGitHub-嘉文

这里是 HelloGitHub 推出的《讲解开源项目》系列,今天给大家带来一款开源免费的模拟后端 API 的工具:moco

没学过后端开发的也能快速上手这个开源项目,靓仔靓妹们不必再辛苦等待后端开发 API,从而有更多的时间逛 HelloGitHub 体验更多有趣的开源项目。接下来本文将用带你快速上手 moco 这个开源工具,让你不再卡在后端接口的开发进度上,一骑绝尘!

项目地址:https://github.com/dreamhead/moco

一、moco 有什么用
我做前端或者客户端开发,对我有什么用?

在后端 API 开发缓慢的时候,如果你想测试应用展示效果,就不必再等后端进度,使用 moco 轻松模拟后端 API。
在项目初期的时候,产品经理或者是客户想看到你的应用展示,模拟好 API 就可以开发前端,展示效果啦。


我做后端开发,对我有什么用?

企业级软件一般都是多人开发,因为接口之间是互相依赖的,所以如果你依赖的服务进度缓慢或者是没有在环境中运行,你就无法对你开发的功能进行测试,进而不能及时交付项目,从而加班熬夜。
即使你所依赖的服务在环境中运行,但是所依赖的服务依旧会不断测试和调优,这个过程也可能会导致你开发功能测试出现问题。一个稳定的测试接口,减少你的等待时间。
二、快速开始
2.1 准备工作

JDK 1.8+ (推荐1.8版本)

2.2 下载 jar 包
点击此处下载 jar 包

2.3 API 配置文件
新建 hello.json 文件,写入以下内容


目录结构如下



2.4 运行项目

在该目录下运行

java -jar moco-runner-1.1.0-standalone.jar http -p 9999 -c hello.json

moco-runner-1.1.0-standalone.jar:运行程序的路径(刚刚下载的包的路径)

http:选择服务类型(有 http、https、socket)

-p 9999:设置服务端口 9999

-c hello.json:设置配置文件路径(刚刚新建的配置文件)

2.5 效果展示
在浏览器中访问一下地址

localhost:9999/hello

效果如图所示

三、详细用法


刚刚的你应该十分轻松地模拟一个简单的后端 API,是不是很有成就感?但是你使用或者开发过后端 API 你就也许知道:一个合格的后端 API 不应该仅仅局限如此。一个合格的后端 API 应该能包括:请求方法、请求 URL、请求参数、请求头、请求体、返回状态码、返回提示信息、返回头和返回体等内容。

如何使用 moco 这个开源项目模拟出一个合格的后端接口呢?接下来就带你一步步了解详细用法。

3.1 基本结构


json 文件的最层是一个 [] 数组,里面可以封装多个 API(示例只有一个 API)
因为 json 配置文件不支持注释,所以这个 API 的注释你可以写到 description 里面
request 可以包含请求的所有内容
response 可以包含返回的所有内容
3.2 模拟一个基本的 RESTful API

method:请求方法
headers:请求头
cookies:请求 Cookies
json:请求体的一种类型(还有 froms 表单等类型)
response 返回值的 headers 、json、cookies 也类似
latency 模拟服务器卡顿(因为模拟的后端 API 返回数据几乎是瞬间的,这里我们让其卡顿 2 秒)
测试

这里我们使用 GitHub 上面开源免费的 API 测试软件 Postman 进行测试

(1)url、请求方法、请求头和 Cookies

(2)请求体(json)


(3)测试效果

点击 Send 发送,并在下方 response 查看测试效果

查看返回的请求头

查看返回的 Cookies

查看全局 Cookies

3.3 附件下载

有时候我们需要模拟文件下载,moco 如何实现呢?

文件目录

localhost:9999/hello 即可下载 demo.txt 文件

3.4 轮询数据
如果我们刷新页面想获得不同的内容 moco 如何实现呢?

访问 localhost:9999/hello 会依次得到如下内容


3.5 重定向
有时候我们想重定向页面 moco 如何实现呢?


访问 localhost:9999/hello 会自动重定向到 https://hellogithub.com

3.6 正则表达式
moco 还支持一些运算符,比如正则表达式。


可以通过正则表达式匹配的链接访问,比如

localhost:9999/hello/jarvan

localhost:9999/hello/bmft

3.7 使用模板
有的时候我们的返回参数依赖于请求参数(比如编码类型),这个时候我们就可以用 template 模板来实现,我们可以在模板中通过 req 来表示发送的请求 。

返回的值是


四、最后

看到这里,想必你已经了解开源项目 moco 的基本使用了,是不是觉得很有意思?这里给出一个小建议,如果想真正使用这个开源项目 moco,建议参考官方文档去「实践」,这是最快捷,最有效的使用开源项目的办法。「实践」就是巩固的最佳方法,希望你能在实践中体验设计程序的快乐!

至此,感谢热爱开源的小伙伴们的阅读。HelloGitHub 会定时不断介绍 GitHub 上有趣的开源免费的项目,如果你对开源项目感兴趣,那就关注我们收到第一时间的文章推送吧。


本文原创,未经作者允许不可转载!
更多内容,欢迎关注作者微信公众号: HelloGitHub!


0条评论
别默默看啦~登录/注册一起参与讨论吧~

暂无评论

请选择举报理由

违反法律法规

侵犯个人权益

有害网站环境

更多训练营>>

为你推荐 · 训练营(全勤打卡报名费全额返累计全额返用户133,673人)

【5月】零基础动态表情包创作训练营
距离开班仅剩12天27人已报名
【6月】人像后期案例实操训练营
距离开班仅剩39天23人已报名
【7月电脑剪映】短视频剪辑入门训练营
距离开班仅剩61天3人已报名
特惠
充值
7折购
今日还在继续学习的你,太棒了!
7
折扣券可用于
年费无限VIP
立 即
使 用
此活动优惠不可与其他活动叠加使用
有效期:000000
消息
登录即可查看消息记录
建议
意见
官方
客服
在线咨询客服热线

您可以与在线客服进行沟通获得帮助

工作日:9:00~22:00节假日:9:00~18:00

联系在线客服

您可以电话联系客服进行沟通获得帮助

工作日:9:30~18:30

400-862-9191
虎课
积分
免费学习90000+个教程!
配套素材、源文件一键下载!
昨日学员已学习了33,301
并提交了258份作业!
登录后立即学习!
loading
微信扫码关注即可登录
您需要同意协议才可以进行登录
登录虎课网,每天免费学课程全站 90000+ 视频会员教程 | 每日可免费学 1
为确保账户信息安全
请先进行真实姓名验证后进行充值付款
立即验证