Node.js +Swagger Editor + Swagger-UI 环境搭建

安装node.js

下载node.js最新版
https://nodejs.org/en/download/

点击 安装器 node-v6.11.1.pkg 开始安装

一路下一步,安装完成

node.js安装后验证

 npm -v 
 node -v 

下载Swagger-Editor

https://github.com/swagger-api/swagger-editor/releases

复制最新 release下载地址

在终端下载
wget https://github.com/swagger-api/swagger-editor/archive/v3.0.17.tar.gz

下载完成,后解压

tar -zxvf v3.0.17.tar.gz

安装node.js HttpServer

npm install -g http-server

启动Swagger-Editor项目

http-server swagger-editor 以8080端口启动项目
http-server –p 8082 swagger-editor 指定端口启动项目

http-server -p 8081 swagger-editor-3.0.17

浏览器访问

下载swagger-ui

可以直接 git clone
git clone https://github.com/swagger-api/swagger-ui.git

也可以下载最新的release

https://github.com/swagger-api/swagger-ui/releases

安装 express

创建一个空文件夹node_app
mkdir node_app
初始化 node ,创建package.json文件()

cd node_ap
~/node_app ✗ >npm init
// 下面的看你心情填写
name: (node_app) node_app
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author:
license: (ISC)

安装 express
~/node_app git:(master) ✗ >npm install express --save

创建 index.js

~/node_app git:(master) ✗ >vim index.js
把下面代码贴如 index.js 中

var express = require('express');
var app = express();
app.get('/', function (req, res) {
  res.send('Hello World!');
});

app.listen(3000, function () {
  console.log('Example app listening on port 3000!');
});

在 node_app 中创建空目录 public

  ~/node_app git:(master) ✗ >mkdir public
  ~/node_app git:(master) ✗ >cd public

修改路由

  ~/node_app/public git:(master) ✗ >vim ../index.js

//在文件第三行插入下面这句话
app.use('/static', express.static('public'));

把下载好的Swagger UI 文件中dist 目录下的文件全部复制到 public 文件夹下。

修改index.html文档文件

将index.html首页中的javascript代码中的url修改为 /static/test.json

重启node服务器

~/node_app git:(master) ✗ >node index.js

浏览器打开 http://localhost:8082/static/#/

接下来就是重点学习一下 文档编写的语法了

参见 https://www.gitbook.com/book/huangwenchao/swagger/details

应用git WebHook功能自动通知阿里云服务器更新代码

同样可以将该项目部署到阿里云服务器,将yaml文件用git管理。应用coding或github等git网站的webhook功能,向服务器发送一个http请求,让服务器自动执行 git pull命令,更新代码,小拉以coding.net为例

1.在服务器建好了一个shell脚本 用于执行git pull命令 命名为gitpush.sh h 添加如下内容

#!/bin/bash
cd /root/swagger;git pull

注意修改可执行权限 sudo chmod 744 gitpull.s
2. 写一个java web应用,例用java调用shell命令,以springboot为例

 @RequestMapping("/run_pull")
    public String runGitPull()
    {

        try {
            String shpath="/root/swagger/gitpull.sh";
            Process ps = Runtime.getRuntime().exec(shpath);
            ps.waitFor();

            BufferedReader br = new BufferedReader(new InputStreamReader(ps.getInputStream()));
            StringBuffer sb = new StringBuffer();
            String line;
            while ((line = br.readLine()) != null) {
                sb.append(line).append("\n");
            }
            String result = sb.toString();
            System.out.println(result);
        }
        catch (Exception e) {

            e.printStackTrace();
            return "git pull faild!" + e.toString();
        }

        return "git pull ok";
    }
  1. 在github对应的swagger项目中新建webhook

将之前将的web请求地址放进去
4. 这样在本地swagger.yaml文件 git push时,就会自动更新到了阿里云服务器

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ruglcc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值