SpringBoot使用EasyYapi对代码0侵入实现API接口一键发布到YApi - 第422篇
导读
通过 YApi的 开放 API , 首先我们会产生一个想法, 开发一个 IDEA 的插件, 产生这个想法以后,就去先去插件市场里搜寻, 果然已经有很多大佬先一步开发好了. 这里先一步帮大家也筛选了一下, 选择了对代码 0 入侵的 EasyYapi
一、EasyYapi概述
1.1 EasyYapi是什么?
官网地址:https://easyyapi.com/
官网的介绍:For yapi Not only for yapi。
EasyYapi是一款Idea插件,帮你导出API到YApi、postman、markdown。
1.2 EasyYapi特色
1.3 EasyYapi优势
(1)基于javadoc&KDoc&ScalaDoc解析API文档
(2)你可以在保持代码零侵入的情况下得到相当完整的api文档, 但是特殊的需求还是需要部分特殊的注释/注解配合
(3)与之相对的是, 你可以灵活的运用配置规则来适应你的项目特性以减少代码侵入.
特殊声明: 由于scala插件中提供的openapi变化过于频繁, 不再作为默认支持选项. 需要在scala项目中使用的开发者可自行从easy-yapi/releases获得支持scala的插件包
二、EasyYapi安装
2.1 EasyYapi支持的IDE
l IntelliJIDEA 173+(2017.3+)
l IntelliJ IDEA Community Edition173+(2017.3+)
2.2从IDEA仓库中安装
· Preferences(Settings) > Plugins > Browse repositories... > find"EasyYapi" > Install Plugin
2.3装手动下载安装
下载插件 Jetbrains orGithub -> Preferences(Settings) > Plugins > Install plugin fromdisk... 重启 IDE.
Jetbrains的 easyyapi的地址:
https://plugins.jetbrains.com/plugin/12458-easyyapi
Github的easyyapi地址:
https://github.com/tangcent/easy-yapi/releases
2.4安装成功验证
点击idea的导航的code可以看到:
2.5使用
支持以下使用方法:
(1)打开项目中的包含api/rpc的文件或者在IDEA的左边项目文件区域选择文件或者文件夹, 使用快捷键alt shift E(windows)/ctrl E(mac), 然后选择要导出的API,选择导出渠道Yapi/Markdown/Postman, 点击[✔]按钮或者按回车键完成导出
(2)打开项目中的包含api/rpc的文件或者在IDEA的左边项目文件区域选择文件或者文件夹, 鼠标右键点击文件内容或文件夹, 选择ExportYapi/ExportPostman/ExportMarkdown导出该文件或文件夹中所有的api
(3)在IDEA的左边项目文件区域选择文件或者文件夹, 鼠标点击最上方Code > ExportYapi/ExportPostman/ExportMarkdown
(4)鼠标点击最上方Code > YapiDashBoard, 然后就可以用鼠标将左边的API拖动到右边yapi目录中,完成API导出到Yapi
(5)鼠标点击最上方Code > ApiDashBoard, 然后就可以用鼠标将左边的API拖动到右边postman目录中,完成API导出到Postman
(6)打开项目中的包含api的文件, 右键文件内容选择Call,就可以发起对当前文件中的API的请求
三、EasyYapi使用实战
接下来看一个例子,我们将使用EasyYapi插件生成api,然后发布到YApi。
如果YApi环境,你还没有搭建好的话,那么关注公众号「SpringBoot」,回复关键词「yapi」,获取文章《接口管理平台YApi坑死我了(超级详细实操教程)》
3.1 构建项目
使用SpringBoot构建一个web项目。如果这个步骤还不懂的话,我只能…
3.2 创建一个controller类
构建一个订单类:
package com.kfit.springbooteasyyapidemo.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
/**
* 订单管理V1.0
*
* @author 悟纤「公众号SpringBoot」
* @date 2022-03-21
* @slogan 大道至简 悟在天成
*/
@RestController
@RequestMapping("/order")
public class OrderController {
/**
* 保存订单.
* @return
*/
@RequestMapping("/saveOrder")
public String saveOrder(OrderInfo orderInfo){
return "saveOrder";
}
/**
* 根据id查询订单.
* @return
*/
@RequestMapping("/deleterOrder")
public Map<String,Object> deleterOrder(int oid){
Map<String,Object> rsMap = new HashMap<>();
rsMap.put("code",1);
rsMap.put("codeMsg","OK");
rsMap.put("oid",oid);
return rsMap;
}
}
3.3 导出API到YApi平台
点击项目,使用快捷键alt shift E(windows)/ctrl E(mac),弹框:
说明:
(1)这里的描述就是我们在类上的注解。
(2)可以选择要导出的类型,这里选择Yapi。
然后点击绿色的✅,填写yapi server的地址:
点击OK,会弹出如下的界面:
这个Private Token 应该去哪里获取呐?这个的话是在YApi的控制台的设置进行获取:
复制这里的token,填写进去:
点击OK,看到控制台的打印信息:
到这里说明导出OK了。
进入到YApi的控制台查看下:
这里的名称都是通过获取注释来实现了,以此来实现代码的零侵入。
如果你修改了注释,那么只需要重新发布即可。
看下接口基本信息:
这里的oid是非必须的,那么点击运行是会报错的:
当然我们也可以勾选上参数:
我们希望oid的参数默认就是必需的,要这么处理呢?
具体对于EasyYapi更多的使用咱们下节在详细的介绍。
购买完整视频,请前往:http://www.mark-to-win.com/TeacherV2.html?id=287