接口管理工具YApi怎么用?颜值高、易管理、超好用!

news2024/12/25 9:06:40

众多接口管理工具如雨后春笋搬冒出。让人欣慰的是,有许多优秀作品来自国内,包含YApi和rap。
看着中文的官网,熟悉的汉语,不禁让人暗爽。当然这也就带来另一个弊端,因为使用基数少,所以参考资料少。我们想学习使用方法,只能依赖官方文档,也算是福祸相倚了。
本文将带您走进Yapi的世界,让您体验一回小清新的接口管理工具。

根据统计,市面上互联网项目超过10亿,保守统计涉及的API数量有100亿。但是很多API的质量堪忧。因为与API相关的文档、调试、测试和数据Mock在工作中效率非常低。

我们急需一款产品,它需要具有接口管理功能,提供调试,文档管理和测试功能。这时YApi横空出世。
这是一个接口管理平台,可以帮助开发者创建、发布和维护API。YApi 还为用户提供了优秀的交互体验。开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

1080×364 35.3 KB

YApi适合公司业务比较复杂,尤其是跨部门协作的情况下使用,和它类似的工具还有rap、swagger、moco。

rap也具有图形界面,但火爆程度逐渐不如yapi。而swagger呢,是一个超级强大的工具,它的野心已经不满足于接口管理,后续课程会讲到它。

moco在13年获取Duke选择奖,moco的使用也很简单,维护一份json文件,然后利用命令运行。

在这么多工具面前,YApi能够脱颖而出实属不易。在实际工作中,YApi和swagger属于两个流派,前者易于管理,有着友好的UI界面,但生态弱,依赖人工和UI维护。而swagger呢,是一个十足的野心家,已经提供api全生命周期的解决方案,它已经不是工具,已然成为了标准。

进入YApi后,这页面,这UI,确实小清新,不愧是后起之秀。这里简单进行介绍,它主要有下面四个部分:
1.首页头部展示了当前所在的位置、搜索框、新建项目、查看文档和用户信息。
2.首页左侧展示分组信息,“分组”是“项目”的集合,只有超级管理员可以管理分组。
3.首页右侧是分组下的项目和成员列表,点击左侧的某个分组,右侧会出现该分组下的项目和成员信息。
4.点击项目右上角的星星即可关注项目,关注的项目可以在“我的关注”页面查看。

1080×581 56.8 KB


其实不光是首页UI,他的项目UI也令人咋舌,在UI上这么清新的国内平台已经非常少见。

点击一个项目,进入项目页,项目页展示了属于该项目的全部接口。并提供项目、接口的全部操作。
5.项目页左侧的 “接口列表” 展示了该项目下的所有接口,右侧默认显示该项目下所有接口的列表。
6.点击左侧的某个接口,右侧会出现“预览”、“编辑”和“运行”。
7.点击左侧的 “测试集合” 使用测试集功能。
8.点击二级导航的“设置”,项目组长即可编辑项目信息和管理成员列表。
9.点击二级导航的“动态”,即可查看项目的操作日志。

有的读者已经迫不及待了!下面用一个简单例子来入门YApi,在项目里新建接口,这时会弹出一个窗口,几个选项都很清楚,接口路径是什么?这是方便前端调用后端,而设置的接口路径:

1080×472 49.4 KB


点击新添加的接口,右侧可以看到接口的预览信息,点击右侧的编辑进入编辑面板。在该面板中你可以看到接口的基本信息(接口名称、分类、路径),除此以外,你还可以完善以下接口信息:

  • 接口路径:可以更改 HTTP 请求方式,并且支持 restful 动态路由,例如 /api/{id}/{name}, id和name是动态参数
  • 状态:用于标识接口是否开发完成。
  • Tag:用于标识接口tag信息(v1.3.23+),在接口list页可以根据tag过滤接口

    1014×470 22.9 KB


    我们接着往下看,你会看到请求参数,可以设置请求时需要哪些参数,它们可以是必需,也可以是不必须:
  • Query参数:接口 url 的查询字符串。点击『添加Query参数』按钮来添加参数,可以通过拖动来交换参数位置
  • Headers:http 请求头字段。在 req_body 形式是 form 格式下会在 header 中自动生成 ‘Content-Type application/x-www-form-urlencoded’,其他3种格式也会自动生成不同 header

    1080×290 23.1 KB


    请求参数后面是返回数据,它分为 json & raw 两种形式。基于 mockjs 和 json5,这是一种使用注释的方式写参数说明,如果你看不懂,请注意下面的链接,这是官网对Mock的介绍。
    Mock介绍:
    Mock介绍-教程

    853×436 22.8 KB


    上面只是对接口的设置,但我们经常遇到一些情况,比如我想根据不同的请求参数、IP返回不同的 HTTP Code、HTTP 头和 JSON 数据,这么复杂的情况,接口设置是无法做到的,期望Mock登场!它说:“你们靠边站,我可以做到!”

期望Mock可以根据设置的请求过滤规则,返回期望数据,这是一个高端玩家。要想使用它,你要先进入接口详情页,然后点击高级Mock。

1080×286 34.1 KB


点击添加期望,填写过滤规则以及期望返回数据,如下图这样,最后点击确定。

1080×872 34.9 KB

845×659 23.1 KB


我们在浏览器里测试一下,发送符合规则的请求:

950×647 65.4 KB

就像文中说的那样,在这么多工具面前,YApi能够脱颖而出实属不易。在实际工作中,YApi和swagger属于两个流派。前者易于管理,有着友好的UI界面,但生态弱,依赖人工和UI维护。而swagger呢,是一个十足的野心家,已经提供api全生命周期的解决方案,它已经不是工具,已然成为了标准。
YApi要走的路还很长,它有自己劲敌:swagger。由于篇幅有限,本篇文章暂时讲解到此

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/157697.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

发送tcp/udp请求

本文章介绍下通过nc工具和iperf工具,发送tcp/udp请求一、nc工具(netcat工具)这个工具linux系统默认是自带的,以下是命令的常用参数1.1 发送tcp请求在服务端监听端口nc -l port客户端连接并发送请求nc -v host port在服务端收到了信…

自定义动态IRule进行路由转发

gateway的负载均衡以及feign服务之间的调用或者RestTemplate请求,都可以使用自定义IRule规则进行路由转发。 自定义IRule 固定IRule:将IRule的一个实现类注入到spring容器中 Configuration public class MyIRuleConfig { Beanpublic IRule myIRule() {…

力扣sql基础篇(五)

力扣sql基础篇(五) 1 页面推荐 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 a 输入示例 b 输出示例 1.2 示例sql语句 # Write your MySQL query statement below SELECT distinct page_id recommended_page FROM Likes WHERE (user_id in (SELECT user2_idFROM …

字符串查找、错误信息、字符分类函数

1、寻找子串strstr char* my_strstr(const char* str1, const char* str2) {assert(str1 && str2);const char* cp str1;const char* s1 str1;const char* s2 str2;while (*cp){s2 str2;s1 cp;while (*s1!\0 && *s2!\0 && * s1 *s2){s1;s2;}if (…

一步一步学爬虫(5)Ajax分析方法

一步一步学爬虫(5)Ajax分析方法5.2.1. 分析案例5.2.2. 过滤请求5.2.3. 总结5.2.1. 分析案例 这里还需要借助浏览器的开发者工具,下面以 Chrome 浏览器为例来介绍。 首先,用 Chrome 浏览器打开微博的链接 https://m.weibo.cn/u/283…

排查开机启动项

防止被控机器失联部分木马会添加开机启动项作为复活的手段 /etc/rc.local /etc/rc.local 是 /etc/rc.d/rc.local的软链接 [rootVM-4-11-centos etc]# ll rc.local lrwxrwxrwx 1 root root 13 Apr 6 2022 rc.local -> rc.d/rc.localrc.local的原始内容: #!/…

中文文案排版指北

格式规范千千万,内容创作 No.1 但是当下我们专注与文案排版。优秀的排版、正确使用标点符号能让阅读者赏心悦目,提升阅读体验。这篇文章将 GitHub 上的有关排版的规范摘抄部分供大家查阅,更多详情还请访问原文所在(底部引用中的地…

APSIM练习:小麦苜蓿轮作

在本练习中,您将创建一个小麦苜蓿轮作,其中草料阶段持续数年。 基于“Rotation Sample.apsim”创建一个新的模拟。这是小麦鹰嘴豆轮作。在 Manager 文件夹中,Rotation Management 组件用于表示旋转,使用带有节点(圆圈…

网站需要怎么优化比较好(网站优化有哪些技巧)

怎样让网站优化在短时间内看到效果? 在企业推广营销推广中,网站优化占据了很大一部分,对于企业推广营销有着决定性影响。如果想让您的企业在诸多品牌中脱颖而出,甚至在互联网中有强大的竞争力,你必须要做好网站优化&a…

基于微信小程序云开发的投票小程序源码,图文投票微信小程序源码

功能介绍 投票活动十分火,商家,企业,机构偶尔都会来一场投票活动评选,本小程序支持图文投票,简单方便、随时随地完成投票,可以方便设定投票模式(按天按全程,投票数限定)…

MySQL基础——DQL语句

select 聚合函数(字段列表) from 表名; Mysql的相关知识 好处 : 1.持久化数据到本地 2.可以实现结构化查询,方便管理 数据库主要分为: DB(数据库),保存一系列有组织的数据容器。 DBMS(数据库管理系统),用于对DB获得数…

[蓝桥杯 2017 省 B] k 倍区间(前缀和枚举/数论优化)

题目传送门 思路分析: 第一思路比较容易想到,就是枚举所有的前缀和,然后遍历它们计数满足题意的前缀和数量,最后输出即可,但是这里的数列最多达到了100000,在2层循环下,总的枚举次数就达到了O(…

webpack 的基本使用及配置

webpack 的基本使用配置 npm 镜像源创建列表隔行变色案例新建空白项目目录,初始化 package.json 配置文件通过 npm 安装 jquery新建 src 源代码目录index.htmlindex.js检查网页效果webpack 的安装webpack 的安装dependencies 与 devDependencies参数 -S 及 --save参…

规则引擎easy-rule快速入门及整合SpEL使用

规则引擎介绍 规则引擎解决的实际上就是判断条件分支过多的问题,举个例子,营销策略里,消费不足200,可用10元消费券,消费超过200元,可以享受9折优惠,超过400元和享受8折优惠。这里可以直接用if …

【houdini】带着uv进行模拟(冰激凌案例)

整个sop的路线图 前半部分:赋予材质并分离冰激凌球 一般模型是分部分的,比方说下面这个冰激凌的,分为5个部分。三个不同的冰激凌球和水和杯子。这些部分在houdini中被称为group。 用material节点一口气赋予5个group材质。 具体的材质的指…

【Linux】 gcc 、动态库和静态库,程序是如何链接的

文章目录前言一、gcc 是什么?二、使用步骤1.预编译2.编译3.汇编4.链接三、动静态库1.概念2.区别前言 在Linux环境下,除了学好编辑器 vim 的使用,还需要学会C语言的编译器 gcc 的功能,否则代码无法翻译成可执行程序。本文将介绍 gc…

怎样快速地迁移 MySQL 中的数据?

我们通常会遇到这样的一个场景,就是需要将一个数据库的数据迁移到一个性能更加强悍的数据库服务器上。这个时候需要我们做的就是快速迁移数据库的数据。那么,如何才能快速地迁移数据库中的数据呢?今天我们就来聊一聊这个话题。数据库的数据迁…

Spring Boot 日志详解

Spring Boot 日志一、日志有什么用二、日志怎么用三、自定义日志打印3.1 在程序中得到日志对象3.2 使用日志对象打印日志四、日志级别4.1 日志级别有什么用4.2 日志级别的分类与使用4.3 日志级别设置五、日志持久化5.1 配置文件名5.2 配置保存路径六、更简单的日志输出 -- lomb…

Go第 13 章 :2-客户信息关系系统

Go第 13 章 :2-客户信息关系系统 13.1 项目需求分析 模拟实现基于文本界面的《客户信息管理软件》。该软件能够实现对客户对象的插入、修改和删除(用切片实现),并能够打印客户明细表 13.2 项目的界面设计 主菜单界面 添加客户…

SegFormer笔记(1)安装

一、代码地址github地址:https://github.com/NVlabs/SegFormer二、我的系统配置:1、硬件2、软件win10,vs2022,python3.7三、创建虚拟环境conda create -n MySegFormer python3.7 numpy conda activate MySegFormer python会显示如…