• 11
  • 11
分享
  • 一站式接口管理工具,真香!
  • Liam 2022-01-27 13:08:22 字数 2279 阅读 1819 收藏 11

 前端mock数据的尴尬

作为前端开发,拿到产品的需求,和后端讨论接口和数据结构的定义后,就可以开始前端的开发工作了,但后端一般无法在很短的时间内把接口开发完成,提供给前端使用,前端为了在开发过程中模拟真实的接口请求,往往需要自己去实现接口mock数据。mock数据是一件很麻烦的事,虽然有现成的mock库可以使用,生成mock数据,但是需要学习mock语法,学习成本高,花费时间多,大大降低开发效率,尽管之前在网络上尝试过很多接口mock平台,但大部分都是界面简陋,缺少可视化的界面,同样需要学习mock语法,花费的时间和精力依然没有减少,每次使用这些平台和工具都会有一种抗拒心理.....

后来偶然间在网上发现了Apifox这个工具,一开始觉得和之前用过的接口mock平台差不多,抱着试试看的心态安装了这个软件,在使用过程中发现它的mock功能非常简单好用,慢慢喜欢上了这款软件。

原来mock数据可以如此简单,真的不得不佩服Apifox产品的思维,把日常开发遇到的痛点通过一个软件解决了,让程序员可以专注开发工作 ,大大地提升了开发效率,接下来分享一下我是如何使用Apifox这个软件的mock功能。

首先要去Apifox官网Apifox - API 文档、调试、Mock、测试一体化协作平台 - 接口文档工具,接口自动化测试工具,接口Mock工具,API文档工具,API Mock工具,API自动化测试工具下载软件,你会发现这是一个国产中文软件,而且是跨平台的,支持widnow、macos和linux三个平台。

找到自己电脑平台对应的软件,然后下载安装,第一次使用需要注册,注册完成登陆进去就可以愉快的使用了。

新建团队和项目

新建一个团队,例如新建一个【小猪快跑】的团队,团队可以邀请人员,但目前只是自己使用,不需要邀请其他人,然后点击新建项目按钮,新建一个【个人项目】,进入【个人项目】里面,可以看见软件的主界面

1.png

2.png

新建接口

如果前端开发需要开发一个界面展示用户信息,界面是酱紫的:

3.png

界面展示的信息包括:姓名、年龄、性别、电话、邮箱和头像,假如这里的数据是通过请求接口/getUserInfo得到的,那接口返回的数据结构应类似下面的代码:

{
  code: 200,
  success: true,
  data: {
    id: 5364
    name:'张三',
    age: 25,
    gender: 'man',
    phone: '19856281845',
    avatar: 'http://example.com/xxx.png',
  }
}

接口的路径和参数:/getUserInfo?id=xxxx 有了上面这些信息,前端开发就可以在Apifox上新建一个接口来模拟请求获取mock数据。

  • 1.新建接口 鼠标移到➕按钮上面就会有一个下拉菜单,选择新建接口

4.png

5.png

  • 2.填写基本信息 在空白接口页填写接口的基本信息

路径:/getUserInfo

请求方法:GET(通过下拉选择选中需要的请求方法)

名称:获取用户信息

分组:根目录(不想放在根目录,可以自己新建分组)

状态:开发中 (有多种接口状态供选择,根据自己的需求选择)

标签:用于筛选器筛选接口,可以自由填写, 这里就填用户

说明:描述接口的功能

服务:请求的地址,可以使用默认设置

  • 3.填写请求参数信息 请求参数有四种不同的类型:Params、Body、Header和Cookie,开发者根据请求的类型来填写,目前getUserInfo接口只需要Params参数,参数名是id、必填、示例值是1234,如果接口有其他请求头信息,可以在Header Tab里面填写请求header的参数

6.png

  • 4.填写返回response 填写完请求的参数以后,如果想要返回mock数据,就要填写返回的response,那如何去实现数据mock功能呢? 在返回response这一模块,在 成功200 Tab的面板下面填写mock配置, 填写信息如下:

7.png在mock输入框输入@ 符号就会自动列出mock选项,在输入时会根据输入的内容筛选合适的mock语句,非常的人性化,简直是mock小白的福音,如果想要查看更详细的mock操作,可以看官方文档www.apifox.cn/help/app/mock/mock-rules/,里面列出很多mock例子,把需要的mock语句复制过来就可以使用了,完成后点击右上角的保存按钮。

  • 5.运行接口 接下来就是运行接口,看一看能不能得到我们想要的mock数据,先选择环境,选中Mock服务

8.png点击运行按钮跳转到运行tab

9.png

然后点击发送就可以得到mock数据,观察返回的数据,和我们的预期一样,现在前端就可以调用这个接口,拿到mock数据

10.png

在接口文档界面,点击mock表格里的mock链接就会自动复制链接

11.png

把复制后的链接粘贴到在浏览器的地址栏,按下回车键,就可以看到网页显示的json数据了

12.png

mock服务器是在本地电脑上运行,其他连接到同一局域网的设备可以通过访问电脑的ip请求/getUserInfo接口获取mock数据

分享接口

当你成功新建了一个接口,想分享给别人,就可以使用Apifox的接口分享功能,接口分享有两种类型:公开和私有,公开的不需要密码,私有的需要密码,别人就可以通过你分享的链接查看你的接口信息

13.png

写在最后

Apifox除了mock数据这个功能外,还有很多可以提升开发效率的功能,在这里就不一一列出来,Apifox是免费的软件,感兴趣的同学可以去官网下载下来亲自去体验一下,感受它的强大之处。

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 读者提问:『超好用的画图工具,有推荐的吗 ?』阿常回答:这 3 款画图工具,简单好用,必须得试试~1、draw.io支持网页 / Win / Mac / Linux,开源免费,文件存储在本地,也可以选择存储位置。在线版:https://app.diagrams.net/离线版:https://github.com/jgraph/drawio-desktop2、processon在线版,个人免费,不过限制文件数量。在线版:https://www.processon.com/3、坚果云绘图在线版,个人免费,文件数量无限制。在线版:https://www.jianguoyun.com/st...
            0 0 982
            分享
          • 这几天在做一个功能实现的时候,需要把别人用 Python2.6 写好的脚步转成 Python3.4 实现,大部分地方转化都没啥问题,但是在 socket.inet_aton() 转化的过程中出了点问题,花费我不少的精力去解决,先做个记录备忘,同时给后续需要的人做个提醒。首先说一下,我在解决这个问题前期的思路有点问题,所以请关注最后的总结。需求目的:把一个 ip 地址使用 socket.inet_aton() 转化后和一个字符串组合,然后算出 MD5。下面是 Python2.6 的实现代码:#!python2 # -*- coding: utf-8 -*- import socket im...
            1 1 1545
            分享
          •   在软件测试这条道路上,大部分的职业技能发展道路都会是纯业务手工测试→自动化测试→性能测试→安全测试/测试开发。  但是却有着一部分人起初进入软件测试这一行看重的就是软件测试属于IT行业,门槛比较低,不需要代码基础。  这就导致了这一部分测试工程师在一定程度上,在职位上的进阶就比较困难了。因为现在基本绝大多数互联网公司都已经把代码编程和自动化作为必要的技能。  为了更好的解决这部分工程师的工作痛点,本文分享一款近几年非常火爆的一款自动化测试工具:Katalon Studio。  1. Katalon Studio介绍  Katalon Studio 是一款在网页应用、移动和网页服务...
            0 0 336
            分享
          •   据法新社最新消息,TikTok当地时间22日向美国联邦法院提起诉讼,要求阻止蒙大拿州对这款视频共享应用程序实施禁令。  报道说,TikTok在诉讼中辩称,这项将于2024年起实施的禁令违反了宪法中有关言论自由的权利。  “我们相信,基于一系列极具说服力的先例和事实,我们的法律挑战将会获胜。”TikTok一名发言人对法新社表示。  今年5月17日,美国蒙大拿州州长格雷格·詹福尔特正式签署法案,禁止TikTok在该州运营,明年1月1日起生效。蒙大拿州成为全美首个签署彻底禁止TikTok法案的州。但媒体普遍认为,该禁令将面临法律挑战。美联社19日称,5名TikTok内容创作者提起诉讼,试图推翻蒙...
            0 0 670
            分享
          •    软件的概述  1、软件生命周期  先来了解软件生命周期的全过程:  下面对软件生命周期各个过程进行逐一解析:  (1)问题定义:由软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。  (2)需求分析:对软件需求进行更深入的分析,划分出软件需要实现的功能模块,并制作成文档。(需求分析说明书)  (3)软件设计:在需求分析结果的基础上,对整个软件系统进行设计,包括系统框架设计、数据库设计等。(概要设计、详细设计)  (4)软件开发:在软件设计的基础上,选择一种编程语言进行开发。  (5)软件测试:软件开发完成后对软件进行测试,以查找软件设计与软件开发过程中存在的问题并加以修正。 ...
            0 0 466
            分享
      • 51testing软件测试圈微信