我的编程空间,编程开发者的网络收藏夹
学习永远不晚

API文档管理平台

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

API文档管理平台

在公司中,有很多开发,每个人维护的api接口是不一样的。如果有一个统一的api文档管理平台,每个开发,把自己维护的接口录入进去。

之后再开发别的功能时,不需要重复造轮子,直接调用就可以了。有新员工入职时,也可以快速上手!

 

关于api文档管理,网上有很多。有在线收费的,也有开源的。基于节省成本考虑,这里主要介绍2个开源工具:ShowDoc和YApi。

下面会详细介绍着2个工具的使用方法,都是基于docker安装的!

 

ShowDoc是一个非常适合IT团队的在线API文档、技术文档工具。你可以使用Showdoc来编写在线API文档、技术文档、数据字典、在线手册。

官方地址:

https://www.showdoc.cc/

 

基于docker安装

本文所使用的系统是  ubuntu-16.04.5-server-amd64,先安装docker

apt-get install -y docker.io
apt-get clean all

 

下载国内镜像

docker pull registry.docker-cn.com/star7th/showdoc

 

新建存放showdoc数据的目录

mkdir /showdoc_datamkdir /showdoc_data/htmlchmod 777 -R /showdoc_data

 

启动showdoc容器。启动完了后别忘记后面还有转移数据的步骤。

docker run -d --name showdoc -p 4999:80 -v /showdoc_data/html:/var/www/html/ registry.docker-cn.com/star7th/showdoc

 

转移数据

docker exec showdoc \cp -fr /showdoc_data/html/ /var/www/

 

设置权限

chmod 777 -R /showdoc_data

 

根据以上命令操作的话,往后showdoc的数据都会存放在 /showdoc_data/html 目录下。
你可以打开  http://localhost:4999 来访问showdoc。账户密码是showdoc/123456

 

访问页面

http://192.168.91.128:4999

效果如下:

1.png

点击进入首页

2.png

 

点击右侧的登录,输入用户名和密码

3.png

 

 登录之后,点击新建项目

4.png

 输入项目名和描述,点击提交

1341090-20181121100019460-2140498367.png

 

项目就创建好了,点击项目

 1341090-20181121100045313-554847579.png

点击左侧的添加按钮

1341090-20181121100110489-1006111511.png

 

点击插入API接口模板,点击右侧的保存

可以看出,左边就是markdown格式,右边就是预览效果

1341090-20181121100200385-489646492.png

 

保存之后,点击返回,效果如下:

1341090-20181121100311276-850200504.png

 

ok,到这里,一个api文档就完成了。关于showdoc其他操作,请参考链接:

https://www.showdoc.cc/help?page_id=65610

 

是不是很Nice!那么问题来了,开发要测试这个接口怎么办?

打开postman,输入上面的请求url,选择POST请求,输入参数.....

是不是很麻烦?还得让开发安装postman,进行一系列操作。

那么有没有直接在这个网页上,集成postman功能,可以直接发送POST请求,查看返回结果呢?

有,那就是YApi。

 

 

介绍

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

  • 权限管理
    YApi 成熟的团队管理扁平化项目权限配置满足各类企业的需求

  • 可视化接口管理
    基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率

  • Mock Server
    易用的 Mock Server,再也不用担心 mock 数据的生成了

  • 自动化测试
    完善的接口自动化测试,保证数据的正确性

  • 数据导入
    支持导入 swagger, postman, har 数据格式,方便迁移旧项目

  • 插件机制
    强大的插件机制,满足各类业务需求

 

官方地址:

https://yapi.ymfe.org/


使用 Docker 构建 Yapi

1、创建 MongoDB 数据卷

docker volume create mongo_data_yapi

 

2、启动 MongoDB

docker run -d --name mongo-yapi -v mongo_data_yapi:/data/db mongo

 

3、获取 Yapi 镜像

版本信息可在 阿里云镜像仓库 查看

docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi

 

4、初始化 Yapi

初始化数据库索引及管理员账号

docker run -it --rm \
  --link mongo-yapi:mongo \
  --entrypoint npm \
  --workdir /api/vendors \
  registry.cn-hangzhou.aliyuncs.com/anoy/yapi \
  run install-server

 

自定义配置文件挂载到目录 /api/config.json,官方自定义配置文件 -> 传送门

 

5、启动 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

 

使用 Yapi

访问 http://localhost:3000 登录账号 admin@admin.com,密码 ymfe.org

点击登录

1341090-20181121101927676-1719897834.png

 

输入用户名和密码

 1341090-20181121102006594-848053516.png

 点击添加项目

1341090-20181121102116110-2084476127.png

 

创建项目

1341090-20181121102506169-793686063.png

 

 点击添加接口

 1341090-20181121102316578-1277856602.png

 

输入接口名称和接口路径

1341090-20181121102610767-572112824.png

接口就创建好了,点击编辑,添加参数

1341090-20181121102659164-1310031033.png

 

添加2个参数

1341090-20181121112929151-2108882552.png

 

设置返回数据,点击导入json

 1341090-20181121102925312-1974612928.png

 输入json

1341090-20181121104618471-651487271.png

 

 勾选,表示必须返回。输入备注

1341090-20181121103737946-1816015517.png

 

点击下面的保存,点击预览,效果如下:

1341090-20181121113030572-9694789.png

 

 

 点击运行,需要安装插件

1341090-20181121104023378-162652962.png

对于最新版的谷歌浏览器,比如版本为70.0.3538.67,它是不允许本地安装的,只能在谷歌商店安装!

点击google商店获取,跳转页面

1341090-20181121104157098-2041430365.png

 

点击右侧的添加,点击添加扩展程序

1341090-20181121104220155-380887924.png

 

添加完成之后,再次刷新页面,点击运行,效果如下:

1341090-20181121113058248-899355530.png

 

这上面,就可以输入一些值了。在下面的Response,就会返回结果

1341090-20181121104416281-1847276633.png

 

如果要测试的地址和当前url不匹配,可以手动设置

点击环境设置

1341090-20181121112749303-1719510622.png

 

输入测试服务器的ip和端口号

1341090-20181121112706984-1312258013.png

 发送POST请求,输入参数

1341090-20181121113610439-620747595.png

 

返回正确时,效果如下:

1341090-20181121112629805-683175675.png

 

最后将状态,选择为已完成

1341090-20181121104821408-378510868.png

 

刷新页面,查看预览,效果如下:

1341090-20181121104906880-751674280.png

 

Chrome浏览器离线安装插件

在这个页面中,点击手动下载

 1341090-20181121104023378-162652962.png

 

它会下载一个crossRequest.zip文件,将这个文件解压,会得到一个2.8_0.crx

1341090-20181122155206128-68717189.png

 

将2.8_0.crx的后缀crx改成rar

1341090-20181122155312231-1132466705.png

 

将这个文件解压

1341090-20181122155333357-1792804039.png

 

打开 Chrome浏览器,点击更多工具-->扩展程序

1341090-20181122160115995-1392392291.gif

 

默认的开发者模式是关闭的

1341090-20181122155453468-235986252.png

 

将它开启,会出现一个加载已解压的扩展程序

1341090-20181122155523513-1773332636.png

 点击它,选择刚刚解压的文件夹

1341090-20181122155600191-1660122131.png

 

扩展程序就安装好了!

 1341090-20181122155623315-1347928539.png

 

基于DRF的测试接口

假设没有测试接口,可以使用Python的rest framework模块来模拟一个登陆接口。

确保已经安装了以下2个模块

pip3 install Django
pip3 install djangorestframework

 

新建项目untitled

1341090-20181121114444712-977399815.png

 

修改settings.py,注册djangorestframework,最后一行添加

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app.apps.AppConfig',
    'rest_framework',
]

 

继续修改settings.py,允许监听所有Ip

ALLOWED_HOSTS = ['*']

 

修改views.py,增加视图函数

from django.shortcuts import render
from rest_framework.views import APIView

from rest_framework.response import Response

class LoginView(APIView):
    def post(self, request, *args, **kwargs):
        data = {"code": "200", "data": "ok", "error": ""}
        return Response(data)

 

修改urls.py,增加路由

from django.contrib import admin
from django.urls import path,re_path
from app01 import views

urlpatterns = [
    path('admin/', admin.site.urls),
    re_path(r'^(?P<version>[v1|v2]+)/login', views.LoginView.as_view(), name='login'),
]

 

修改启动参数

1341090-20181121114809214-798932040.png

 

监听0.0.0.0

1341090-20181121114824848-86827752.png

 

启动Django,使用postman测试接口

1341090-20181121114913435-210645888.png

 

 

本文参考链接:

https://www.jianshu.com/p/a97d2efb23c5 

 


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

API文档管理平台

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

API文档管理平台

在公司中,有很多开发,每个人维护的api接口是不一样的。如果有一个统一的api文档管理平台,每个开发,把自己维护的接口录入进去。之后再开发别的功能时,不需要重复造轮子,直接调用就可以了。有新员工入职时,也可以快速上手!关于api文档管理,网
2023-01-31

Linux平台Ruby应用部署文档编写

在编写 Linux 平台 Ruby 应用部署文档时,需要考虑以下几个方面:系统环境要求安装 Ruby 和必要的依赖库部署应用程序代码配置数据库和其他服务运行和管理应用程序日志和监控备份和恢复故障排查和优化以下是一个简单的示例:
Linux平台Ruby应用部署文档编写
2024-09-15

客户服务管理平台

1.关键词:客户服务中心随着企业业务规模的不断扩大,客户服务的质量和效率越来越受到关注。为了更好地管理和优化客户服务,企业需要一个客户服务中心来集中管理客户数据、沟通渠道和客服人员。客户服务中心是企业的核心竞争力之一,可以提高客户满意度,增加客户的忠诚度,为企业带来更多的商业机会。2.客户服务中心的组成客户服务中心由多
客户服务管理平台
2024-01-18

linux平台的office文档转pdf的实例分析

linux平台的office文档转pdf的实例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。需要材料:1、 Openoffice3.4(我是32位的cen
2023-06-05

云服务器管理平台 批量管理程序

云服务器管理平台 批量管理程序远程桌面是微软公司为了便于网络管理员管理维护服务器推出的一项服务。从windows 2000 server版本开始引入,网络管理员时候远程桌面连接器连接到网络任意一台开启了远程桌面控制功能的计算机上,就像是自己
2023-06-03

钉钉客户管理系统平台

首先,钉钉客户管理系统平台可以帮助企业管理客户信息。在企业中,客户信息是非常重要的,它可以反映企业的产品、服务和品牌形象等,从而为企业提供更好的营销策略和客户服务。通过客户信息的收集、分析和管理,企业可以更好地了解客户需求,更好地满足客户需求,提高客户满意度,从而增强企业的竞争力。其次,使用钉钉客户管理系统平台还可以提
钉钉客户管理系统平台
2023-10-28

宜搭平台收费管理系统

一、收费模式宜搭平台收费管理系统的收费模式主要分为两种,一种是一次性收费,另一种是年费制。一次性收费一次性收费是指用户购买一套收费管理系统,该系统包含所有功能,并在购买后立即开始使用,不需要等待收费期限的结束。这种收费模式的优点是可以让用户在短时间内享受到所有功能,但是缺点是一旦用户购买了该软件,后续的升级和维护都需要
宜搭平台收费管理系统
2023-10-28

WEB数据库管理平台kb-dms:团队管理【四】

管理员系统初始化的管理员拥有平台最大的权限,只有管理可以创建团队和添加管理员。负责人团队可以配置相应的负责人,可以配置多个。只要团队的创建人和负责人才可以编辑团队、更新成员信息。成员团队里的人员列表,由团队负责人或团队创建人添加。激活激活后团队可见,取消激活团
WEB数据库管理平台kb-dms:团队管理【四】
2018-04-05

Linux平台达梦数据库V7之数据文件管理

一 前言在实际生产环境中,我们常常会遇到表空间不足的问题,针对此类问题,只要我们的磁盘空间充足,我们可以通过更改数据文件大小、添加新的数据文件等方式来解决;管理数据文件的操作需要 DM服务器处于打开状态下;二 数据文件管理2.1 添加数据文件在达梦数据库中,一
Linux平台达梦数据库V7之数据文件管理
2022-01-07

快速搭建python爬虫管理平台

目录爬虫有多重要理解什么是爬虫管理平台定义广义爬虫管理平台爬虫管理平台模块爬虫管理平台架构为什么需要爬虫管理平台如何选择一个合适的爬虫管理平台爬虫管理平台 Crawlab 介绍简介解决问题界面及使用整体架构Github地址及Demo使用 D
2022-06-02

MongoDB集合中的文档管理

上一博客写了集合的管理,集合里面存放的是文档,因此聪明的你应该能想到这篇是学习文档管理。要说标题应该是文档管理,不过对于文档的管理都是先获得集合对象,在集合对象上调用方法管理文档,所以标题还是EKaEogAt对集合的管理。在集合管理中,要
2022-07-07

Linux平台Docker容器间的依赖管理

在Linux平台上,Docker容器间的依赖管理是一个重要的考虑因素。以下是一些关于如何在Docker容器之间管理依赖的方法和最佳实践:使用Dockerfile:Dockerfile是一个文本文件,包含了一系列命令和参数,用于自动化构建Do
Linux平台Docker容器间的依赖管理
2024-10-06

华为大数据云管理平台实测

场景描述为搭建H公司车联网业务集团级的云管理平台,统一管理、部署硬件资源和通用类软件资源,实现IT应用全面服务化、云化,CDM(Cloud Data Migration,简称CDM)助力H公司做到代码“0”改动、数据“0”丢失迁移上云。产品优势一站式数据运营平
华为大数据云管理平台实测
2015-02-03

SLM — 仿真过程与数据管理平台

近年来企业通过将仿真纳入产品研发过程来减少对试验的依赖,缩短研发周期,同时也利用仿真分析手段来深刻认识产品特性,通过设计- 仿真- 优化迭代,实现产品创新设计,提高产品设计质量。达索系统SLM(Simulation Lifec
2023-06-03

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录