随着开发的推进,各种各样的文档会接踵而来,比如:需求文档、架构文档、接口文档等等,我们通过 SVN、Git 等可以很方便的管理,面对需求的不断变化,我们需要不断的对各类文档进行维护。但在开发阶段,针对接口文档而言,其具有不确定性、难维护、难测试等特点,接口的管理往往成为了难题。

今天我们带着 API 接口管理的问题,一起来看看一款可视化接口管理平台 YApi,让能轻松帮助我们搞定 API 的管理问题。

YApi 介绍

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

在开始之前,可以先体验一把,体验地址:https://yapi.baidu.com

特性

  • 可视化接口管理,基于 Websocket 的多人协作接口编辑功能和类 Postman 测试工具,让多人协作成倍提升开发效率。
  • 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性。
  • 自动化测试, 完善的接口自动化测试,保证数据的正确性,并支持对 Response 断言。
  • Mock Server,易用的 Mock Server,方便 Mock 数据的生成。除支持普通的随机 Mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据。
  • 数据导入导出,支持导入 Swagger, Postman, HAR 数据格式,导出 HTML, Markdown, JSON 数据格式, 方便 API 接口文档的迁移及归档。
  • 插件机制,强大的插件机制,满足各类业务需求,便于扩展对接等。
  • 基于 JSON5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍。
  • 免费开源,支持二次开发,内网部署,信息安全可靠。

谁在用

  • 去哪儿
  • 携程
  • 艺龙
  • 美团
  • 百度
  • 腾讯
  • 阿里巴巴
  • 京东
  • 今日头条
  • 唯品支付
  • 链家网
  • 快手
  • 便利蜂
  • 中商惠民
  • 新浪
  • VIPKID
  • 马蜂窝

认识 YApi

在开始使用 YApi 之前,我们先来熟悉一下 YApi 的网站结构,这将让你快速了解YApi。

登录与注册

想要使用 YApi ,首先要注册账号。

首页

登录后进入首页,首页展示了分组与项目。

此时你作为新用户,没有任何分组与项目的权限,因此只能搜索、浏览 “公开项目” 的接口,如果在首页找不到任何项目,请联系管理员将你加入对应项目。

  1. 首页头部展示了当前所在的位置、搜索框、新建项目、查看文档和用户信息。

  2. 首页左侧展示分组信息,“分组”是“项目”的集合,只有超级管理员可以管理分组。

  3. 首页右侧是分组下的项目和成员列表,点击左侧的某个分组,右侧会出现该分组下的项目和成员信息。

  4. 点击项目右上角的星星即可关注项目,关注的项目可以在“我的关注”页面查看。

项目页:

点击一个项目,进入项目页,项目页展示了属于该项目的全部接口,并提供项目、接口的全部操作。

此时你作为新用户,只能浏览接口信息,不可以编辑项目或接口,如果需要编辑,请联系管理员将你加入该项目。

  1. 项目页左侧的 “接口列表” 展示了该项目下的所有接口,右侧默认显示该项目下所有接口的列表。

  2. 点击左侧的某个接口,右侧会出现“预览”、“编辑”和“运行”。

  3. 点击左侧的 “测试集合” 使用测试集功能。

  4. 点击二级导航的“设置”,项目组长即可编辑项目信息和管理成员列表。

  5. 点击二级导航的“动态”,即可查看项目的操作日志。

个人中心

鼠标移动到右上角的用户头像或用户名上,即可点击“个人中心”查看个人信息。

在个人信息页面可以查看并修改自己的用户名、密码等信息。

YApi 操作手册

可直接参考官方教程。

部署

在决定使用 YApi 后,首先会考虑如何部署。虽说官方提供了详细的部署文档,但一顿操作下来却踩了不少坑,却被难倒了门外。在此,结合官方提供的部署教程,自己基于docker-compose、Kubernetes等方式提供了一键离线安装 YApi,更加的方便。

官方部署教程(推荐可视化部署)

可直接参考官方教程,除了部署本身之外,通过该教程让我们进一步了解到 YApi 的一些细节问题,如:依赖什么、配置什么等,这也为我接下来 Docker 部署提供了参考。

Docker 在线/离线部署(个人推荐)

在有网络的条件下,可直接通过可视化部署(yapi-cli 工具)是非常简单的,但在内网(无外网)下,却无能为力。因此,特制作 Docker 镜像,可通过 docker-compose 或 Kubernetes 等方式一键部署 YApi。

镜像制作

这部分主要讲述镜像的制作过程,docker 镜像已推送至 docker hub,直接拉取,无需自己动手制作镜像。

config.json: YApi 配置文件,可按需修改打入到镜像。

commons.js:解决 YApi bug 问题。

  1. 克隆本项目代码到本地

    git clone https://github.com/xcbeyond/deploy-scripts.git
    
  2. 构建镜像

    # 切换到 yapi 目录
    cd yapi
    # 需要花费一点时间
    docker build -t xcbeyond/yapi:1.9.2 .
    
  3. 推送镜像

    docker push xcbeyond/yapi:1.9.2
    

一键部署

支持通过 docker-compose 和 Kubernetes 两种方式一键部署。

docker 镜像 tar 包获取

有外网时,可忽略该操作。

如果在离线(无外网)情况下,需事先准备好 docker 镜像tar包。

  1. 在能正常连接外网的 docker 环境下,拉取镜像 xcbeyond/yapi

    docker pull xcbeyond/yapi:1.9.2
    
  2. 生成 docker 镜像 tar 包。

    docker save -o yapi-1.9.2.tar xcbeyond/yapi:1.9.2
    
  3. 将镜像 tar 包 yapi-1.9.2.tar 上传将要部署的环境上。

  4. 导入镜像 tar 包。

    docker load < yapi-1.9.2.tar
    

docker-compose 部署

将 docker-compose 文件 /yaip/docker-compose.yaml 上传至部署环境上,执行 docker-compose 命令 docker-compose up -d 完成部署即可。

浏览器访问地址 http://<部署环境IP>:3000,可用超级管理员登录或直接注册新账号。

超级管理员:admin@admin.comymfe.org,登录后建议修改密码。

Kubernetes 部署

将 Kubernetes 部署资源文件上传至部署环境上,分别通过命令 kubectl apply -f 执行文件 mongodb.yaml 和 yapi.yaml 完成部署即可。

kubectl apply -f mongodb.yaml
# 等待 mongodb 启动成功后,再执行 yapi
kubectl apply -f yapi.yaml

注:先启动 mongodb、再启动 yapi。

浏览器访问地址 http://<部署环境IP>:30300,可用超级管理员登录或直接注册新账号。

超级管理员:admin@admin.comymfe.org,登录后建议修改密码。

参考资料:

  1. https://hellosean1025.github.io/yapi/

  2. https://github.com/xcbeyond/deploy-scripts/tree/master/yapi

可视化接口管理平台 YApi,让你轻松搞定 API 的管理问题相关推荐

  1. 不用excel和ERP管理软件,也能轻松搞定多级BOM管理

    对于一个制造型企业来说,BOM单可以说是企业的核心文件,它不仅是生产制造过程的重点,还联系到财务.采购.销售等多个部门的协同合作,有一个效率实用的BOM管理系统,将会对企业业务的多个流程,带来良性的效 ...

  2. echarts 大屏可视化_看似复杂炫酷的数据可视化设计,用这波神器轻松搞定!

    数据大屏与数据可视化 数据可视化是目前对数据展示最常用的方式.数据的可视化设计有助于将复杂的数据,用最易理解的方式展示在用户的面前. 数据可视化在中后台的设计中很常见,通常主要用于分析和决策,对实时性 ...

  3. 看似复杂炫酷的数据可视化大屏,学会这个工具轻松搞定

    "今朝有酒今朝醉,报表不做不能睡,借问酒家何处有,报表还得编一宿",这句带有些许幽默感的打油诗背后,却是我从业多年的心酸历程,没错,我就是你们口中做报表的哥哥--表哥. 前些日子在 ...

  4. wps怎么做时间线_ 在家办公总是做不好时间管理怎么办?学会加减乘除轻松搞定...

    本文作者:以书为静(秋叶书友会共读计划第12期) 推荐编辑:米勒 不知道你有没有遇到过类似情况: "正在写工作汇报的你,突然手机上跳出了一条"现男友"上热搜的消息,于是你 ...

  5. 搭建API集成管理平台YApi

    随着API数量越来越多,wiki已经体现不出优势了.冗长的文档资料让人难以维护,稍微一点小改动就需要对很多地方进行修改.最近一位前端大佬推荐了API集成管理平台YApi,上手后发现还挺不错的. YAp ...

  6. 教你如何轻松搞定云上打印管理

    摘要:加快自主创新,满足数字化用户多场景文印需求. 本文分享自华为云社区<有了司印云打印,云上打印管理轻松搞定!>,作者:云商店 . 作为与职场和个人办公息息相关的工作场景,打印长期以来都 ...

  7. 做好PMC管理三大工作,轻松搞定生产计划与物料控制

    做好PMC管理三大工作,轻松搞定生产计划与物料控制 PMC管理在工厂企业日常操作中无外乎"后推前拉.滚动排查",概括来讲PMC管理整体职能体现为六个字:计划.控制.协调. 那么如何 ...

  8. 线程导入大数据入库_大数据处理及分析该怎么做?用这款数据分析软件轻松搞定...

    ​对大数据的重视让很多企业都在纷纷寻找更好的大数据处理及分析方法?这款数据分析软件轻松搞定! 一.数据采集 虽然每天互联网都会产生大量的数据,对于企业来讲,要搜集对自己企业有用的数据才是真的大数据.首 ...

  9. 网站后台没有提示声怎么办_收藏 | 没有 PS 怎么办?10个在线作图网站,轻松搞定图片设计...

    求职技巧 | 职业技能 | 通关考试,关注公众号:职域go Photoshop 已经成为大多数工作需要用到的工具,很多时候我们都要用到它来满足一些简单的排版.图片处理.尺寸调整或者是做一些简单的效果. ...

最新文章

  1. 为经典版eclipse增加web and JavaEE插件
  2. 2019年值得关注的人工智能技术的五大趋势
  3. 踏上《软件设计精要与模式》第二版的征途
  4. Intellij 14快捷键
  5. php 漂亮的分页类
  6. 中livechart显示大数据_大数据显示:辽宁新基建技能人才存量居全国第十位
  7. 机器学习高质量数据集大合辑
  8. Java-web下使用RSA进行加密解密操作
  9. LOIC安全测试工具
  10. 【事件相机整理】信号处理、噪声与滤波
  11. Android Native报错定位(addr2line工具的使用)
  12. jquery ajax回调函数带入参数
  13. 16MHz贴片晶振智能电子产品的好帮手
  14. System V消息队列报Resource temporarily unavailable 错误
  15. 列车停站方案_基于节点分级的高速铁路列车停站方案设计策略
  16. 【从Java转C#】第八章:委托、lambda、事件
  17. 2020 第三届江西省高校网络安全技能大赛 线上赛Writeup
  18. 斯坦福大学开源用于网络神经百万量级OGB基准测试的数据集
  19. 苹果app老是显示无法连接服务器失败原因,iphone无法连接到app store服务器出错怎么办...
  20. MySql中增加注释、追加注释、修改注释、查看注释

热门文章

  1. Abaqus RVE单元 周期性边界施加(PBC) 前处理(一) 单元重新编号及Equation方程建立
  2. NC-Verilog仿真
  3. 泛微E9升级KB包方法
  4. [虚拟机][linux]虚拟机VMware桥接模式无法上网问题
  5. 机器学习之数据挖掘算法(一)OneR算法
  6. Java图片文件头校验
  7. 哪些语句在python中非法_下列语句中,在Python中是非法的
  8. 黑莓BlackBerry手机辐射大小实测
  9. debian linux系统安装教程,Debian 8.2.0 (Jessie) 快速纯净安装教程
  10. android 通过adb命令控制wifi开关