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

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: 高效、易用、功能强大的可视化接口管理平台 YApi,让我们能轻松帮助我们搞定 API 的管理问题。

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


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

1、YApi 介绍

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


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


1.1 特性

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


1.2 谁在用

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


1.3 认识 YApi

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


登录与注册

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

首页

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


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

  1. 首页头部展示了当前所在的位置、搜索框、新建项目、查看文档和用户信息。
  2. 首页左侧展示分组信息,“分组”是“项目”的集合,只有超级管理员可以管理分组。
  3. 首页右侧是分组下的项目和成员列表,点击左侧的某个分组,右侧会出现该分组下的项目和成员信息。
  4. 点击项目右上角的星星即可关注项目,关注的项目可以在“我的关注”页面查看。


项目页:

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


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


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



个人中心

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

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


2、YApi 操作手册

可直接参考官方教程


3、部署

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


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

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


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

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


3.2.1 镜像制作

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


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

commons.js:解决 YApi bug 问题

  1. 克隆本项目代码到本地
git clone https://github.com/xcbeyond/deploy-scripts.git
  1. 构建镜像
# 切换到 yapi 目录
cd yapi
# 需要花费一点时间
docker build -t xcbeyond/yapi:1.9.2 .
  1. 推送镜像
docker push xcbeyond/yapi:1.9.2

3.2.2 一键部署

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


docker 镜像 tar 包获取

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


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


  1. 在能正常连接外网的 docker 环境下,拉取镜像 xcbeyond/yapi
docker pull xcbeyond/yapi:1.9.2
  1. 生成 docker 镜像 tar 包。
docker save -o yapi-1.9.2.tar xcbeyond/yapi:1.9.2
  1. 将镜像 tar 包 yapi-1.9.2.tar 上传将要部署的环境上。
  2. 导入镜像 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.yamlyapi.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
相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
7天前
|
API PHP 开发者
速卖通商品详情接口(速卖通API系列)
速卖通(AliExpress)是阿里巴巴旗下的跨境电商平台,提供丰富的商品数据。通过速卖通开放平台(AliExpress Open API),开发者可获取商品详情、订单管理等数据。主要功能包括商品搜索、商品详情、订单管理和数据报告。商品详情接口aliexpress.affiliate.productdetail.get用于获取商品标题、价格、图片等详细信息。开发者需注册账号并创建应用以获取App Key和App Secret,使用PHP等语言调用API。该接口支持多种请求参数和返回字段,方便集成到各类电商应用中。
|
13天前
|
JSON API 数据格式
微店商品列表接口(微店 API 系列)
微店商品列表接口是微店API系列的一部分,帮助开发者获取店铺中的商品信息。首先需注册微店开发者账号并完成实名认证,选择合适的开发工具如PyCharm或VS Code,并确保熟悉HTTP协议和JSON格式。该接口支持GET/POST请求,主要参数包括店铺ID、页码、每页数量和商品状态等。响应数据为JSON格式,包含商品详细信息及状态码。Python示例代码展示了如何调用此接口。应用场景包括商品管理系统集成、数据分析、多平台数据同步及商品展示推广。
|
4天前
|
机器学习/深度学习 人工智能 Serverless
满血 DeepSeek 免费用?附联网搜索教程!暨第三方 API 平台全面横评
满血 DeepSeek 免费用!支持联网搜索!创作声明:真人攥写-非AI生成,Written-By-Human-Not-By-AI
787 8
满血 DeepSeek 免费用?附联网搜索教程!暨第三方 API 平台全面横评
|
5天前
|
JSON 前端开发 API
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
29 5
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
|
4天前
|
监控 供应链 搜索推荐
亚马逊商品详情接口(亚马逊 API 系列)
亚马逊作为全球最大的电商平台之一,提供了丰富的商品资源。开发者和电商从业者可通过亚马逊商品详情接口获取商品的描述、价格、评论、排名等数据,对市场分析、竞品研究、价格监控及业务优化具有重要价值。接口基于MWS服务,支持HTTP/HTTPS协议,需注册并获得API权限。Python示例展示了如何使用mws库调用接口获取商品详情。应用场景包括价格监控、市场调研、智能选品、用户推荐和库存管理等,助力电商运营和决策。
51 23
|
5天前
|
JSON 数据挖掘 API
lazada商品详情接口 (lazada API系列)
Lazada 是东南亚知名电商平台,提供海量商品资源。通过其商品详情接口,开发者和商家可获取商品标题、价格、库存、描述、图片、用户评价等详细信息,助力市场竞争分析、商品优化及库存管理。接口采用 HTTP GET 请求,返回 JSON 格式的响应数据,支持 Python 等语言调用。应用场景包括竞品分析、价格趋势研究、用户评价分析及电商应用开发,为企业决策和用户体验提升提供有力支持。
52 21
|
2天前
|
JSON API 数据格式
eBay商品详情接口(ebay API系列)
eBay 商品详情接口是电商从业者、开发者和数据分析师获取商品详细信息的重要工具,涵盖标题、价格、库存、卖家信息等。使用前需在 eBay 开发者平台注册并获取 API 凭证,通过 HTTP GET 请求调用接口,返回 JSON 格式数据。Python 示例代码展示了如何发送请求并解析响应,确保合法合规使用数据。
32 12
|
1天前
|
JSON API 数据格式
阿里巴巴商品详情接口(阿里巴巴 API 系列)
在电商开发中,获取阿里巴巴商品详情信息对数据分析、竞品研究等至关重要。通过调用其商品详情接口,开发者可获取标题、价格、图片、描述等数据,满足多种业务需求。接口采用HTTPS协议,支持GET/POST请求,返回JSON格式数据。示例代码展示了如何使用Python的requests库进行接口请求,需传递商品ID和访问令牌。实际应用时,请依据官方文档调整参数并确保安全性。
27 10
|
6天前
|
数据采集 JSON 监控
速卖通商品列表接口(以 AliExpress Affiliate 商品查询 API 为例)
以下是使用 Python 调用速卖通商品列表接口(以 AliExpress Affiliate 商品查询 API 为例)的代码示例。该示例包含准备基础参数、生成签名、发送请求和处理响应等关键步骤,并附有详细注释说明。代码展示了如何通过公共参数和业务参数构建请求,使用 HMAC-SHA256 加密生成签名,确保请求的安全性。最后,解析 JSON 响应并输出商品信息。此接口适用于商品监控、数据采集与分析及商品推荐等场景。注意需通过 OAuth2.0 获取 `access_token`,并根据官方文档调整参数和频率限制。
|
7天前
|
存储 搜索推荐 API
淘宝拍立淘按图搜索API接口系列概述
淘宝拍立淘按图搜索API接口允许用户通过上传图片或拍摄实物来搜索相似或相同的商品。这一功能主要依赖于图像识别技术,系统会对上传的图片进行分析和处理,提取出商品的特征信息,并在淘宝的商品数据库中进行匹配搜索,最终返回与上传图片相似或相同的商品列表。