1
- # 不想再看后端的脸色了?试试这个开源项目 2 分钟模拟一个后端 API
1
+ # 不想再等后端的接口了?帮你 2 分钟模拟个后端接口的开源项目
2
2
3
3
4
-
5
- ![ image-8] ( images/cover.jpg )
4
+ ![ ] ( images/cover.jpg )
6
5
7
6
<p align =" center " >本文作者:HelloGitHub-<strong >嘉文</strong ></p >
8
7
9
8
这里是 HelloGitHub 推出的[ 《讲解开源项目》] ( https://github.com/HelloGitHub-Team/Article ) 系列,今天给大家带来一款开源免费的模拟后端 API 的工具:moco
10
9
11
- 没学过后端开发的也能快速上手这个开源项目,靓仔靓妹们不必再继续看后端脸色辛苦等待后端开发 API,从而有更多的时间逛 HelloGitHub 体验更多有趣的开源项目。接下来带你 2 分钟快速上手模拟一个后端 API。
10
+ 没学过后端开发的也能快速上手这个开源项目,靓仔靓妹们不必再辛苦等待后端开发 API,从而有更多的时间逛 HelloGitHub 体验更多有趣的开源项目。接下来本文将用带你快速上手 moco 这个开源工具,让你不再卡在后端接口的开发进度上,一骑绝尘!
12
11
13
12
> 项目地址:https://github.com/dreamhead/moco
14
13
18
17
19
18
> 我做前端或者客户端开发,对我有什么用?
20
19
21
- 1 . 在后端 API 开发缓慢的时候,你想测试应用展示效果,你不必再看后端脸色,自己使用 moco 轻松模拟后端 API。
22
- 2 . 在项目初期的时候,产品经理或者是客户想看到你的应用展示,不必再辛苦等待后端开发这个 API。
23
-
20
+ 1 . 在后端 API 开发缓慢的时候,如果你想测试应用展示效果,就不必再等后端进度,使用 moco 轻松模拟后端 API。
21
+ 2 . 在项目初期的时候,产品经理或者是客户想看到你的应用展示,模拟好 API 就可以开发前端,展示效果啦。
24
22
25
23
26
24
> 我做后端开发,对我有什么用?
27
25
28
- 1 . 企业级软件一般都是分布式交付,因为分布式微服务之间是互相依赖的 ,所以如果你依赖的服务进度缓慢或者是没有在环境中运行,你就无法对你开发的功能进行测试,进而不能及时交付项目,进而加班熬夜 。
29
- 2 . 即使你所依赖的服务在环境中运行,但是所依赖的服务依旧会不断测试和调优,这个过程也可能会导致你开发功能测试出现问题。
26
+ 1 . 企业级软件一般都是多人开发,因为接口之间是互相依赖的 ,所以如果你依赖的服务进度缓慢或者是没有在环境中运行,你就无法对你开发的功能进行测试,进而不能及时交付项目,从而加班熬夜 。
27
+ 2 . 即使你所依赖的服务在环境中运行,但是所依赖的服务依旧会不断测试和调优,这个过程也可能会导致你开发功能测试出现问题。一个稳定的测试接口,减少你的等待时间。
30
28
31
29
32
30
36
34
37
35
``` bash
38
36
JDK 1.8+ (推荐1.8版本)
39
- ````
37
+ ```
40
38
41
39
42
40
@@ -99,15 +97,15 @@ localhost:9999/hello
99
97
100
98
效果如图所示
101
99
102
- ! [image-1 ](images/1.png)
100
+ ![ ] ( images/1.png )
103
101
104
102
105
103
106
104
## 三、详细用法
107
105
108
106
刚刚的你应该十分轻松地模拟一个简单的后端 API,是不是很有成就感?但是你使用或者开发过后端 API 你就也许知道:一个合格的后端 API 不应该仅仅局限如此。一个合格的后端 API 应该能包括:请求方法、请求 URL、请求参数、请求头、请求体、返回状态码、返回提示信息、返回头和返回体等内容。
109
107
110
- 如何使用 moco 这个开源项目模拟出一个合格的后端 API 呢 ?接下来就带你一步步了解详细用法。
108
+ 如何使用 moco 这个开源项目模拟出一个合格的后端接口呢 ?接下来就带你一步步了解详细用法。
111
109
112
110
113
111
@@ -187,7 +185,7 @@ localhost:9999/hello
187
185
* ` cookies ` :请求 Cookies
188
186
* ` json ` :请求体的一种类型(还有 ` froms ` 表单等类型)
189
187
* ` response ` 返回值的 ` headers ` 、` json ` 、` cookies ` 也类似
190
- * ` latency` 模拟服务器卡顿 ( 因为模拟的后端 API 返回数据几乎是瞬间的,这里我们让其卡顿 2 秒)
188
+ * ` latency ` 模拟服务器卡顿( 因为模拟的后端 API 返回数据几乎是瞬间的,这里我们让其卡顿 2 秒)
191
189
192
190
193
191
@@ -197,31 +195,31 @@ localhost:9999/hello
197
195
198
196
(1)url、请求方法、请求头和 Cookies
199
197
200
- ! [image-2 ](images/2.png)
198
+ ![ ] ( images/2.png )
201
199
202
200
(2)请求体(json)
203
201
204
- ! [image-3 ](images/3.png)
202
+ ![ ] ( images/3.png )
205
203
206
204
207
205
208
206
(3)测试效果
209
207
210
208
点击 Send 发送,并在下方 response 查看测试效果
211
209
212
- ! [image-4 ](images/4.png)
210
+ ![ ] ( images/4.png )
213
211
214
212
查看返回的请求头
215
213
216
- ! [image-5 ](images/5.png)
214
+ ![ ] ( images/5.png )
217
215
218
216
查看返回的 Cookies
219
217
220
- ! [image-6 ](images/6.png)
218
+ ![ ] ( images/6.png )
221
219
222
220
查看全局 Cookies
223
221
224
- ! [image-7 ](images/7.png)
222
+ ![ ] ( images/7.png )
225
223
226
224
### 3.3 附件下载
227
225
@@ -247,7 +245,7 @@ localhost:9999/hello
247
245
``` bash
248
246
├── hello.json // API 接口配置文件
249
247
├── moco-runner-1.1.0-standalone.jar // 模拟 API 的工具
250
- ├── demo.txt // 要下载的文件,这里可以使用相对路径.
248
+ ├── demo.txt // 要下载的文件,这里可以使用相对路径
251
249
```
252
250
253
251
` localhost:9999/hello ` 即可下载 ` demo.txt ` 文件
@@ -256,7 +254,7 @@ localhost:9999/hello
256
254
257
255
### 3.4 轮询数据
258
256
259
- 如果我们刷新页面想获得不同的内容, moco 如何实现呢?
257
+ 如果我们刷新页面想获得不同的内容 moco 如何实现呢?
260
258
261
259
``` json
262
260
[{
@@ -293,7 +291,7 @@ hello 2
293
291
294
292
### 3.5 重定向
295
293
296
- 有时候我们想重定向页面, moco 如何实现呢?
294
+ 有时候我们想重定向页面 moco 如何实现呢?
297
295
298
296
``` json
299
297
[{
@@ -338,7 +336,7 @@ localhost:9999/hello/bmft
338
336
339
337
### 3.7 使用模板
340
338
341
- 有的时候我们的返回参数依赖于请求参数(比如编码类型),这个时候,我们就可以时 template 模板来实现,我们可以在模板中通过 ` req` 来表示发送的请求 。
339
+ 有的时候我们的返回参数依赖于请求参数(比如编码类型),这个时候我们就可以用 template 模板来实现,我们可以在模板中通过 ` req ` 来表示发送的请求 。
342
340
343
341
``` json
344
342
{
@@ -365,10 +363,9 @@ localhost:9999/hello/bmft
365
363
366
364
## 四、最后
367
365
368
- 看到这里,想必你已经来了解开源项目 moco 的基本使用了,是不是觉得很有意思?这里给出一个小建议,如果想真正使用这个开源项目 moco,建议参考官方文档去「实践」,这是最快捷,最有效的使用开源项目的办法。「实践」就是巩固的最佳方法,希望你能在实践中体验设计程序的快乐!
369
-
370
- 至此,感谢靓仔靓妹们的阅读。HelloGitHub 会定时不断更新 GitHub 上有趣的开源免费的项目,如果觉得你对开源项目感兴趣,可以搜索公众号「HelloGitHub」。
366
+ 看到这里,想必你已经了解开源项目 moco 的基本使用了,是不是觉得很有意思?这里给出一个小建议,如果想真正使用这个开源项目 moco,建议参考官方文档去「实践」,这是最快捷,最有效的使用开源项目的办法。「实践」就是巩固的最佳方法,希望你能在实践中体验设计程序的快乐!
371
367
368
+ 至此,感谢热爱开源的小伙伴们的阅读。HelloGitHub 会定时不断介绍 GitHub 上有趣的开源免费的项目,如果你对开源项目感兴趣,那就关注我们收到第一时间的文章推送吧。
372
369
373
370
374
371
> 参考:
0 commit comments