YApi搭建流程

YApi

介绍:旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API

前言

在考虑多方面因素下,选择了YApi作为前后端API沟通的管理服务,简单说说原因,在API设计方面,考虑过很多,有以下几个:

  • Swagger

  • Postman+Coding

  • ApiPost

  • Rap2

但是这些都有着一些让我无法忍受的问题,以下都是个人想法,也可能是我没有找到对应问题的解决办法。

  • Swagger是通过在代码中写注释或者引入文件来自动生成API文档,要去学习Swagger的文档语言,不是可视化的操作。

  • Postman是API接口设计测试神器,但是他们的API文档只能通过网页来保存与查看,并且他们的response不支持参数的注释介绍,也就是只有返回结果,但是不能自定义每个返回参数的含义,除非单独在json结果中添加注释。

  • ApiPost是国人开发的,功能和PostMan很类似,是我使用最久的,虽然软件内还有一些小问题,但是对于Postman以上两点有极大的改善,不仅文档能导出Markdown和word,并且response的结果可以自动导出键值对并且对其进行注释。不过在使用了几个月后让我放弃的原因就是安全问题,他们的隐私政策中并未提到是如何保存我的接口数据的,并且我如果要生成文档,就一定要分享接口或者目录,这个分享链接默认是开放的,类似于Postman的publish document,但是Postman可以只在团队中分享,并且分享是很严格需要确定的,然而ApiPost的分享只要点击一下,我的这个接口就开放了,我如果没有及时关闭,我甚至都找不到我以往分享了哪一些接口,其实这些不能算是严格的安全问题,最重要的是ApiPost团队可以不经过我的允许查看我的所有接口数据(这是亲身实践确定,这一点就说明了我在他们的数据库数据完全是未加密的,因为我习惯在设计API时也将设计文档写在一起方便查看,但如果是明文数据,那么我还是很排斥的,所以在这之后我就选择了大团队或开源软件以保证我数据的安全性)

  • Rap2界面难受

YApi解决了postman的问题,而且开源可以内网部署,暂时是我完美的选择方案。

环境要求

  • nodejs(7.6+)

  • mongodb(2.6+)

服务器系统

  • Ubuntu 18.04.4

安装环境

  • nodejs安装
sudo apt install nodejs

sudo apt install npm

// 这里注意这样下载的node版本很可能是非常古老的,需要更新为最新的版本

// 首先查看版本(可以和node官网比对一下版本号,最好是LTS稳定版本)
node -v

// 如果版本太老,就需要安装n模块来更新node
npm install -g n

// 安装版本二选一
// 安装稳定版本
n stable

// 安装最新版本
n latest

// npm升级
npm install npm -g
// 如果要指定版本,可以通过@指定版本
npm install npm@3.10.10 -g 

// 注意,此处的node与npm的版本还需调用-v查看,如果仍然为旧版本就是环境变量路径问题

需要调用
path="$path"
解决
  • 安装mongodb(该流程完全按照官方文档走)

    • 官方链接:

Install MongoDB Community Edition on Ubuntu — MongoDB Manual

  1. Import the public key used by the package management system,导入公钥
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
  1. Create a list file for MongoDB,建文件夹
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
  1. Reload local package database,更新apt
sudo apt-get update
  1. Install the MongoDB packages,开始安装mongo
sudo apt-get install -y mongodb-org

// To prevent unintended upgrades
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections

  1. Follow these steps to run MongoDB Community Edition on your system,一些mongo命令
  • Start MongoDB,开启mongo服务
sudo systemctl start mongod
  • Verify that MongoDB has started successfully,查看mongo状态
sudo systemctl status mongod
  • Stop MongoDB,关闭mongo
sudo systemctl stop mongod
  • Restart MongoDB,重启mongo
sudo systemctl restart mongod
  • Begin using MongoDB,命令行使用mongo
mongo

安装YApi

  1. 可视化部署
// 该命令需要root权限,并且时间会有点长
npm install -g yapi-cli --registry https://registry.npm.taobao.org

yapi server

// 之后根据提示访问地址通过网页配置

  1. PM2守护服务进程
  • PM2官方文档

PM2 - Quick Start

npm install pm2@latest -g

// 进入安装好的my-yapi文件夹,依次进入my-yapi/vendors/server,然后执行
pm2 start app.js

posted @ 2021-01-04 10:14  辞树  阅读(4529)  评论(0编辑  收藏  举报