接口管理平台YApi坑死我了(超级详细实操教程) - 421篇

article/2025/9/22 21:09:42

历史文章(累计400+篇文章)

《国内最全的Spring Boot系列之一》

《国内最全的Spring Boot系列之二》

《国内最全的Spring Boot系列之三》

《国内最全的Spring Boot系列之四》

《国内最全的Spring Boot系列之五》

你真的学会了Lambda表达式了吗?一篇让你学废了不香么 - 第417篇

当你的Stream遇上Lambda就爱上了,超级无敌酷酷!- 第418篇

java8+lambda+Stream api实战案例学彻底透学废 - 第419篇

Spring Boot使用ApplicationEvent来实现事件发布订阅功能(美女一个都不能少,都要通知到) - 第420篇

悟纤:师傅,宝宝不开心。

师傅:徒儿,这是怎么了?大姨妈来了?

悟纤:师傅,你别闹~

师傅:那徒儿这是怎么了,谁欺负你了。

悟纤:最近和前端干起来了。

师傅:纳尼,这是怎么了。

悟纤:我把word的API修改了,前端拿着我旧的API文档在开发,结果对方没调试通,就冲我发脾气了,我也很委屈呀。

师傅:徒儿别哭,师傅教你一招,线上API管理的绝招,让前端想找你茬都难。

悟纤:师傅,对徒儿真好,那师傅赶紧开始吧~

前言

       YApi坑实在太多了,原本我以为1个小时就可以搞定的事情了,结果搞了我下午,心态都搞崩了,我太难了。本文超级超级超级详细,强烈建议收藏起来,不然以后要用的时候,怕你找不到。

导读

       API接口在设计时往往需要编写大量的文档,而且编写完成后往往需要根据实际情况经常改动文档,这使得文档编写维护工作量相对较大,让很多的开发者都很头疼。

       此外,伴随着接口版本的迭代开发,接口文档也需要同步更新。而且接口开发完成以后,做接口测试会十分不方便,要是遇上接口数量多、参数负载的情况,那不仅不方便,测试工作量会重上加重。

       为提高接口管控效率,一个非常好用的接口管理平台-YAPI应运而生,让我们一起来看,YAPI有多么的优秀。

一、YApi概述

1.1 为什么需要存在接口管理平台?

1.1.1 后端开发的苦恼

1.1.2 前端开发的苦恼

       对于以上的烦恼,我们一般都会使用到接口管理平台。

       一方面就是自研一款接口管理平台(我们公司就自研过一款简易版本的接口管理平台),另外一方面就是找市面上成熟的接口管理平台。

1.2 接口管理平台都有哪些?

       市面上的接口管理平台都有哪些呢 ?

1.2.1 Apifox

Apifox:API 文档、API 调试、API Mock、API 自动化测试。公网SaaS版免费,私有化部署版收费。

网址:https://www.apifox.cn

1.2.2 Swagger

Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。

网址:https://swagger.io

1.2.3 YApi

YApi:YApi是由去哪网前端团队开源的一款接口管理工具,功能强大,可以轻松的自己部署。而且支持使用docker部署,使用成本很低了。

网址:https://github.com/YMFE/yapi

体验地址:http://yapi.smart-xwork.cn/

文档:http://hellosean1025.github.io/yapi

1.2.4 Rap2

Rap2:Rap2是由阿里妈妈前端团队开源的一款接口管理工具,相对YApi来说,至少文档上面差一些,Github上没有太多介绍,也没提及用docker部署,但也是一个选择吧。

网址:https://github.com/thx/rap2-delos

1.2.5 eolinker

eolinker:eolinker是一个接口管理服务网站,如果不想自己部署YApi、Rap2的团队可以使用,免费版的功能对于小型团队来说足够了。

网址:https://www.eolinker.com/

1.2.6 Postman

       Postman:跨平台的管理工具,可以免费使用,支持mock,支持团队协作,免费版本的限制主要在于每个月1000次的限制,包括Mock请求、API请求等等,对于小型团队(3~5人)应该是足够了。

网址:https://www.getpostman.com/

1.2.7 Apizza

       Apizza:极客专属的接口协作管理工具,在线模拟调试,快速生成api文档,导出离线版文档。

网址:https://www.apizza.net/

       当然除了以上介绍的这些,还有很多,适合自己才是最好的~

       对于Swagger在之前的文章有相关的介绍,可以找到公众号「SpringBoot」,回复关键字「swagger」或者「208

1.3 YApi是什么?

YApi是由去哪儿网移动架构组(简称YMFE,一群由FE、iOS和Android工程师共同组成的最具想象力、创造力和影响力的大前端团队)开发的可视化接口管理工具,是一个可本地部署的、打通前后端及QA的接口管理平台。

YApi旨在为开发、产品和测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布和维护不同项目,不同平台的API。有了YApi,我们可以很方便的测试、管理和维护多个项目的API接口,不像Swagger那样是随应用生和灭的(且线上环境下大多数须关闭),YApi是一个独立的服务平台。

       上面说了这么多,记住核心的一句话就好:

YApi旨在为开发、产品和测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布和维护不同项目,不同平台的API

1.4 YApi核心功能

       直接看官网的介绍:

二、YApi安装

       介绍了这么多,还是来看下YApi怎么安装使用吧。

2.1 依赖环境

       Yapi需要nodejs(npm)和MongoDB,所以现在会演示如何安装。

下边的步骤在macOS下可用,Linux下同理,windows下没试过。

l  nodejs(7.6+)

l mongodb(2.6+)

2.1.1 nodejs安装

       前往地址:https://nodejs.org/zh-cn/download/,下载安装包:

       我这里macOS下载的是PKG的安装包,直接下一步下一步就安装好了,没啥好说的。

2.1.2 MongoDB安装

       如果你有brew,那就直接执行:

brew install mongodb

       如果没有的话,那么先把brew安装一下:

地址:https://brew.sh/

       启动mongodb:

brew services start mongodb

2.2 YApi部署

       YApi有两种部署方式:

(1)方式一. 可视化部署[推荐]

(2)方式二. 命令行部署

2.2.1方式一. 可视化部署(我安装失败了)

       方式一是比较简单的方式,我们就使用方式一来看下如何部署。

       执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。

2.2.1.1 YApi安装

       使用npm进行安装:

npm install -g yapi-cli --registry https://registry.npm.taobao.org

      

启动服务:

yapi server

2.2.1.2 YApi配置

       在浏览器打开 http://127.0.0.1:9090 访问。

说明:

(1)网站地址是YApi的网站的地址,默认3000,没有特殊情况不用修改。

(2)数据库地址MongoDB的地址信息,默认也不用修改。

(3)部署路径,这个需要指定一下。

部署过程有点漫长,自己找点事干。

       部署是真的很慢很慢很慢很慢呐,耗费了我30分钟,不知道干啥了~,还是说我的安装姿势不是很对❓

有可能是github仓库的原因吧,如果你安装成功的话,那么要恭喜你了。如果没有的话,那么使用第二种方式吧。

2.2.1.2方式二. 命令行部署

       如果 github 压缩文件无法下载,或需要部署到一些特殊的服务器,可尝试此方法:

$ mkdir yapi$ cd yapi//或者下载 zip 包解压到 vendors 目录(clone 整个仓库大概 140+ M,可以通过 `git clone --depth=1 https://github.com/YMFE/yapi.git vendors` 命令减少,大概 10+ M)$ git clone https://github.com/YMFE/yapi.git vendors//复制完成后请修改相关配置$ cp vendors/config_example.json ./config.json $ cd vendors$ npm install --production --registry https://registry.npm.taobao.org$ npm run install-server //安装程序会初始化数据库索引和管理员账号,管理员账号名可在 config.json 配置$ node server/app.js //启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候

2.3 YApi使用

       服务已启动,请打开下面链接访问:

http://127.0.0.1:3000/

登录账号admin@admin.com,密码 ymfe.org

                           

添加接口:

三、使用Docker安装YApi

       可能你上面的两种方式都安装失败了,没关系不要气馁。博主为你提供了第三种方式,这种方式大概率会成功的。安装的过程也挺简单的。

3.1 启动 MongoDB

docker run -d --name mongo-yapi mongo

如果没有安装mongodb的话,不要慌,会自己pull最新版本的mogodb,多么贴心呐。

3.2获取 Yapi 镜像

docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi

3.3初始化 Yapi 数据库索引及管理员账号

docker run -it --rm \  --link mongo-yapi:mongo \  --entrypoint npm \  --workdir /api/vendors \  registry.cn-hangzhou.aliyuncs.com/anoy/yapi \  run install-server

自定义配置文件挂载到目录 /api/config.json

3.4启动 Yapi 服务

docker run -d \  --name yapi \  --link mongo-yapi:mongo \  --workdir /api/vendors \  -p 3000:3000 \  registry.cn-hangzhou.aliyuncs.com/anoy/yapi \  server/app.js

3.5使用 Yapi

访问http://localhost:3000

登录账号admin@admin.com,密码 ymfe.org

四、YApi使用

4.1 创建项目

       首先我们要创建一个项目。

       当然你可以创建很多的项目。

4.2 添加分类

       我们的项目一般都是有很多的模块构成的,我们的接口也会进行分类,所以可以创建分类来管理接口:

4.3 添加接口

       此时我们就可以添加接口了:

4.4 添加参数

       删除接口需要一个oid的参数,点击【编辑】进行添加:

4.5 环境配置

       点击预览旁边的【运行】,在运行之前,先添加环境配置:

4.6 安装插件cross-request

       发送请求按钮此时是不可点击的,要安装一个插件。

       选择手动下载,然后进行安装,这个浏览器的插件的安装就不过多说明了。

       但可能你会采坑,这里提供采坑的方案:

(1)踩坑1:该扩展程序未列在 Chrome 网上应用店中,并可能是在您不知情的情况下添加的解决办法

https://zhuanlan.zhihu.com/p/106343392

(2)踩坑2:插件有问题,换个插件

https://www.jianshu.com/p/2417799e1a99

       成功的效果图:

4.7 运行

       此时就可以点击运行了:

       此时点击cross-request的【背景页】:

       对应后端的代码比较简单,使用SpringBoot搭建的一个简单web项目:

结束语

       YApi坑实在太多了,原本我以为1个小时就可以搞定的事情了,结果搞了我下午,心态都搞崩了,我太难了。强烈建议收藏起来,不然以后要用的时候,怕你找不到。

       花了4-5个小时写的这么一篇大长文,点个赞👍,鼓励一下呗(*^▽^*)

我就是我,是颜色不一样的烟火。
我就是我,是与众不同的小苹果。

à悟空学院:https://t.cn/Rg3fKJD


http://chatgpt.dhexx.cn/article/6TQo70ka.shtml

相关文章

API接口开放平台

近期服务器不想在维护了,接口已经陆续开放 服务器也经常奔溃,一分价钱一分货 忠告:出了事情要学会使用法律武器保护自己 主要推荐初步入门学习的伙伴,可以借助这些接口丰富自己的站点 API接口包括: 一、资讯 全网热…

Yapi接口平台个人总结

YApi是去哪儿移动架构组开源的API管理系统,是一款api管理平台。 一,yapi相关信息与教程 官网地址:https://yapi.ymfe.org/ 示例地址:http://yapi.demo.qunar.com/ 使用教程:https://hellosean1025.github.io/yapi …

百度ai平台接口使用记录

前一段时间在做毕业设计,打算做一些风格转换相关的项目,想自己制作一份数据集用于训练,于是发现了百度ai平台提供的api接口可以实现“人脸动漫化”、“图像风格转换”等功能。按照一定步骤操作后,只要通过post请求就可以将本地的图…

API接口管理平台源码thinkPHP

API接口管理平台源码thinkPHP 安装步骤: 1.数据库信息配置在路径【config/database.php】文件中 2.导入根目录下的【data.sql】数据库文件 3.设置网站运行目录为根目录【public】 4.目录 后台地址 /admin/login.html 账户 admin 密码 123456 测试截图 后台截…

通用接口开放平台设计与实现——(2)功能架构

前面说过,接口开放平台主要有两部分功能组成,一是处于主体地位的API接口,对外提供数据服务;二是处于辅助角色的消息服务,用于通知数据变动。 实际上,客观上还需要平台自身管理功能,来维护平台的…

接口测试平台(一)

需求描述: 测试的项目使用内部加密的算法,普通的接口测试测试工具(Jmeter/PostMan/HttpRequest)不能满足,同时满足接口的自动化测试,用例集为1个业务场景为单位进行测试。请求方式中多一种post加密,同时数据比较多结构…

2022盘点工作室常用的API数据接口开发平台

果创云 果创云(http://YesApi.cn),是一个低代码数据接口开发平台,为工作室提供“开箱即用”的数据API接口。 当工作室需要开发自己的小项目、脚本、小程序、管理后台时,可以使用果创云低代码接口平台,快速…

超强接口协作平台如何打造:细数Apifox的六把武器

前言:推荐一款免费而强大的接口协作工具,感兴趣的小伙伴儿自行前往官网尝鲜 1 关于接口协作平台的畅想 软件界发展至今,API(接口)的重要性日益凸显——不同的端,不同的模块都在通过API交互,不…

python 调用企查查接口平台

一、需求: 通过内部系统导出企业信息数据后,筛选状态为“正常”的企业数据。然后拿筛选后的企业去查询该企业的工商数据。 开始是在国家企业信息公示系统中查询,由于查询数据量过大,后改用从企查查接口平台,通过接口获…

Mock.js数据模拟,rap2、postman可视化接口平台,Vue框架的接口链接应用

前言: 作为一名前端程序员,其工作不仅仅是制作出精美的界面,实现页面之间的顺利转跳,各种交互。最主要的工作就是将后端所提供的数据通过合理地接收,应用在页面上,呈现在用户面前,从而使用户能…

IDEA开发工具整合YAPI接口平台

IDEA开发工具整合YAPI接口平台 目录 1 前提 1.1 代码规范 1.2 注释模板需统一 2 使用YapiUpload插件 2.1 下载YapiUpload插件 ​2.2 配置 2.3 idea代码中添加注释 ​2.4 idea推送到YAPI 3 使用EasyYApi插件 3.1 下载…

十大api接口平台(接口商)

一、百度api集市 1136个数据服务接口 网址:http://apistore.baidu.com/ 二、聚合 144个数据服务接口 网址:https://www.juhe.cn/ 三、华付数据 32个实用的数据服务接口,以精准,稳定在行业立足。 网址:http://h…

统一接口平台

1产品介绍 前端应用系统通过统一接口平台获取数据,不直接与外部系统接口打交道。统一接口平台通过多种方式与外部系统联接获取数据并向各前端应用系统提供各种数据格式包,将外部系统有效地隔离在业务系统之外。前端应用系统需要请求的外部接口需要在统一…

接口开放平台,我的一些思考

1. 概述 接口开放平台,为访问者提供统一的URL作为唯一访问入口,参数中指定具体接口标识和接口参数。它的优点包括接口规范性、效率、管理能力。接口开放平台可以分为简单的和复杂的两种方式。简单的接口开放平台,由自身提供接口实现。复杂的…

通用接口开放平台设计与实现——(1)开篇

首先简单聊下背景,大概是几年前,工作中遇到这么一个复杂的应用场景,大型企业中的物流系统,需要跟众多的内外部系统交互,对接的系统达到十几个,接口数量在50个左右,并且后续还会大量增加新的对接…

六大接口管理平台,总有一款适合你的!

前后端分离绕不开的接口测试 先聊一聊前端和后端分离的优点。前后端分离优点如下: 真正的实现前后端解耦,前端服务器使用 nginx;易于发现bug,可以快速定位是谁的问题,不会出现互相踢皮球的现象;减少后端服…

2022中国十大API接口服务平台排行榜(推荐五颗星)

Api接口也就是所谓的应用程序接口,api接口的全称是Application Program Interface,通过API接口可以实现计算机软件之间的相互通信,开发人员可以通过API接口程序开发应用程序,可以减少编写无用程序,减轻编程任务&#x…

python基础教程:startswith()和endswith()的用法

startswith()方法 Python startswith() 方法用于检查字符串是否是以指定子字符串开头如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。str.startswith(str, beg0,endlen(string)); 参数 str --检测的字符串。strbeg …

C# 为什么要用StartsWith而不是Substring进行字符串匹配?

字符串的截取匹配操作在开发中非常常见,比如下面这个示例:我要匹配查找出来字符串数组中以“abc”开头的字符串并打印,我下面分别用了两种方式实现,代码如下: using System;namespace ConsoleApp23 {class Program{sta…

C# 为什么高手喜欢用StartsWith而不是Substring进行字符串匹配?

字符串的截取匹配操作在开发中非常常见,比如下面这个示例:我要匹配查找出来字符串数组中以“abc”开头的字符串并打印,我下面分别用了两种方式实现,代码如下: using System;namespace ConsoleApp23 {class Program{sta…