前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Yapi —— 接口在线管理和调试工具

Yapi —— 接口在线管理和调试工具

作者头像
时间静止不是简史
发布2021-09-07 17:19:37
5.5K0
发布2021-09-07 17:19:37
举报
文章被收录于专栏:Java探索之路

是什么

简介

YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。对于经常使用postman的开发人员非常友好, 支持数据导入, 可以无缝集成.

特性

  • 基于lson5和Mockjs 定义接口返回数据的结构和文档,效率提升多倍
  • 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
  • 不仅有类似postman 的接口调试,还有强大的测试集功能免费开源,内网部署,信息再也不怕泄露了!
  • 支持 postman,har,swagger 数据导入, 可直接将这些工具的请求信息导入到这里
  • 支持 html, markdown, json, swaggerjson格式数据导出, 让接口文档生成更加便捷

对比

之前使用过的接口文档工具有swagger(丝袜哥) , showdoc + runapi , JApiDocs. 在使用过yapi等四种产品后做一个简单的对比

  • swagger 可以帮助我们自动生成接口文档, 但是缺点是不能够导出文档. 而且对代码入侵比较大. 是一个比较重的框架
  • showdoc + runapi 可以帮助我们导出接口文档, 并实现接口文档管理交接, 模板编写, 接口调试等功能. 但是缺点也同样明显, 需要人为输入的内容较多. 而且除此外几乎无额外功能
  • JApiDocs 可以帮助我们自动生成和导出文档, 但是文档内容的详细程度取决于你在书写类, 方法, 属性时是否进行正确而详细的注释. 几乎是全自动生成但是灵活性欠佳.
  • Yapi : 操作较为简便, 功能比较强大(在线使用, 支持数据导入导出, 接口调试, 自带wiki), 是一个各项功能都比较齐全的接口工具.

怎么用

安装方式

代码语言:javascript
复制
# 前提: 需要安装docker. 如果没有安装docker可以见本人 docker 博文
## 1.启动 MongoDB 
docker run -d --name mongo-yapi mongo

##2.获取 Yapi 镜像,版本信息可在 阿里云镜像仓库查看 
docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi

## 3.初始化 Yapi 数据库索引及管理员账号(初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org")
## 初始化成功后, 会在末尾显示初始化后的账号密码信息
docker run -it --rm \
 --link mongo-yapi:mongo \
 --entrypoint npm \
 --workdir /api/vendors \
 registry.cn-hangzhou.aliyuncs.com/anoy/yapi \
 run install-server

## 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

## 5.打开阿里云服务器 3000 的端口
如果自己的云服务器的安全组/防火墙设置了禁止额外的端口访问, 需要在安全组/防火墙中放开3000端口

## 6. 登陆 
访问 http://ip:3000 登录账号 admin@admin.com,密码 ymfe.org

## 官方使用文档地址: 
https://hellosean1025.github.io/yapi/documents/index.html

数据导入

  1. 找到请求的json文件
  2. 点击右上角新建项目, 并填写详细信息

注意: 项目一开始只能设置成私有, 后面可以在设置中设置成公开 , 这样在运行Yapi所在服务器上面注册的用户可以通过搜索项目名/组名来搜索到这个项目了

  1. 选择数据导入的来源并将各种格式文件例如 json 拖入到其中

数据导出

  1. 在数据管理中找到数据导出, 选择导出的文档格式然后点击导出即可
  1. 导出的html格式接口文档如下图, 其他格式请自行测试

项目的用户管理

满足接口文档用户管理的需求. 添加用户, 并让该用户拥有原有项目的访问和测试权限

  1. 将原有项目设置成公开 在项目的设置一栏, 点击后, 在最下方可将项目设置成公开, 这样项目就可以被搜索到
  1. 注册用户
  1. 更改用户信息, 可更改用户名, 邮箱, 以及密码(但请注意牢记更改后的邮箱和密码, 因为登录需要)
  1. 可以在右上方搜索到项目/分组/接口 这里已经实现了基本的访问测试功能.
  1. 经测试, 本人使用的这一版目子用户不能直接通过项目关注来获取管理员创建的项目, 但是可以通过分组创建. 例如子用户创建了一个分组并在这个分组下创建了项目, 管理员就可以通过分组来关注和复制用户了. 或者是在分组中添加可以被访问的子成员用户 ( 怎么说呢. 项目的用户管理做的有点拉~ ) ps: 还有一种方式就是子用户创建项目, 管理员用户可以直接查看项目
  2. 通过分组来分享项目 (用户可以通过分组来关注和复制以及测试和访问项目) 创建分组
  1. 添加成员 成员添加后, 就可以访问到该分组下所有工开的项目了
  1. 总结一下: 如何从一开始就创建可以共享的项目 ->创建分组 ->创建项目 ->项目设置成公开 ->分组成员账号注册 ->在分组设置中添加这些成员账号 -> 访问分组下的项目 -> 关注/复制/访问/测试项目

接口测试

在接口一栏找到运行即可

注意: 第一次使用会提示你安装增加插件扩展程序cross-request3.0

如果按提示安装插件过后, 谷歌出现下面警告, 则需要我们另行配置方式如下(cross-request 被官方下架后的插件安装方法 #1603):

直接下载源码:https://github.com/YMFE/cross-request

然后在浏览器的拓展程序中直接选择加载已解压的扩展程序(如果不能下载可通过本博客末尾分享的下载链接下载)


本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/08/11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 是什么
    • 简介
      • 特性
        • 对比
        • 怎么用
          • 安装方式
            • 数据导入
              • 数据导出
                • 项目的用户管理
                  • 接口测试
                  相关产品与服务
                  访问管理
                  访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档