Host swagger ui at a given directory from your koa v2 app
Inspired by:
npm install koa2-swagger-ui --save
for more swaggerOptions see swagger-uidefaults:
title: 'swagger', // page title
oauthOptions: {}, // passed to initOAuth
swaggerOptions: { // passed to SwaggerUi()
dom_id: 'swagger-ui-container',
url: 'http://petstore.swagger.io/v2/swagger.json', // link to swagger.json
supportedSubmitMethods: ['get', 'post', 'put', 'delete', 'patch'],
docExpansion: 'none',
jsonEditor: false,
defaultModelRendering: 'schema',
showRequestHeaders: false,
swaggerVersion: 'x.x.x' // read from package.json,
validatorUrl: null, // disable swagger-ui validator
},
routePrefix: '/docs', // route where the view is returned
specPrefix: '/docs/spec', // route where the spec is returned
exposeSpec: false, // expose spec file
hideTopbar: false, // hide swagger top bar
favicon: '/favicon.png', // default favicon
import Koa from 'koa';
import { koaSwagger } from 'koa2-swagger-ui';
const app = new Koa();
app.use(
koaSwagger({
routePrefix: '/swagger', // host at /swagger instead of default /docs
swaggerOptions: {
url: 'http://petstore.swagger.io/v2/swagger.json', // example path to json
},
}),
);
app.listen(3000);
depends on yamljs to turn your Yaml into a JS object
npm install --save yamljs
const Koa = require('koa');
const Router = require('koa-router');
const yamljs = require('yamljs');
const koaSwagger = require('koa2-swagger-ui');
const router = new Router({ prefix: '/' });
const app = new Koa();
const router = new Router();
// .load loads file from root.
const spec = yamljs.load('./openapi.yaml');
// example 1 using router.use()
router.use(koaSwagger({ swaggerOptions: { spec } }));
// example 2 using more explicit .get()
router.get('/docs', koaSwagger({ routePrefix: false, swaggerOptions: { spec } }));
app.use(router.routes());
app.listen(3000);
基于大神的一个已有node服务器(读者难以重现),体验使用Koa2的封装,封装写文件js.writeFile()方法。本文进行过程回顾。使用MacOS。 安装node、Koa2 node.js官网:https://nodejs.org/en/download/ 升级npm: sudo npm install npm -g 安装n: npm install -g n 升级node.js版本: n s
依赖安装 由于我的node是koa项目所以需要安装如下依赖包, 如果是express项目将koa2-swagger-ui换成swaggeer-ui-express npm i koa2-swagger-ui swagger-jsdoc -S koa2-swagger-ui 将swagger JSON转为页面,返回至客户端浏览 swagger-jsdoc 在代码中通过注释的形式,生成swagger
注意两点: 1. 在PostMapping里加上 headers = "content-type=multipart/form-data" 2. 在MultipartFile前加上 @ApiParam. 例如:@ApiParam(value="上传", required = true) MultipartFile file @ApiOperation(value = "校验服务发布请求Url
Koa2-blog(有问题可以加qq群:725165362) node+koa2+mysql (欢迎star) 现在最新的代码有变动,请参照最新的代码,新增了上传头像、分页、markdown语法等 教程 Node+Koa2+Mysql 搭建简易博客 创建数据库 登录数据库 $ mysql -u root -p 创建数据库 $ create database nodesql; 使用创建的数据库 $
Koa2 Boilerplate 这是团队近两年的 Koa2 + ES 2017 做 API 项目的最佳实践,项目中用到一些新的 Feature,并完成了从 request 到 service 和 DB(Sequlize)到 response 的全部流程。同时也包含了一些基本的 middleware。 项目用到的功能 �� Koa2 & koa-router Koa 相对于 Express 更吸引
基于koa2的代理工具 功能 代理http和https 转发本地请求到网络 本地服务器 本地模拟数据配置 解析smarty模板 随意修改请求和响应结果 安装 安装node之后执行 npm install koa2-proxy 使用 var proxy = require('koa2-proxy');// 本地静态服务器proxy.static(__dirname);// 本地模拟文件proxy.m
koa2-winston koa2 version winston logger like express-winston Add logger to your koa2 server in 3 lines 中文介绍 koa2-winston Usage Installation Quick Start Configuration Examples Do not record any reques
注意: 请使用Node6以上版本,获得更好的性能与ES6支持。启用Babel-es2017,不再对一些Node6已支持的特性转码。 起因 因为Koa2已经在蓬勃发展中,Async/Await能切实的避免回调地狱。所以基于Koa2订制了一套模板。 全局安装koa2-easy,之后使用koa2命令即可在当前目录一键生成服务端程序。地址为:当前目录/koa2-easy npm i koa2-easy -
《Koa2进阶学习笔记》已完结 序言 从2017年2月份开始写这本开源电子书,是为了记录自己的学习轨迹和分享技术心得,本开源书的Koa2的基础进阶教程已经完结,更多的Koa.js的高阶学习会在后续新开几本书进行探索。感谢这一年来所有读者的关注!O(∩_∩)O。 本书为Koa.js 2.x 的入门书籍,如果想了解更多 Koa.js 的原理,可阅读 《Koa.js 设计模式-学习笔记》 更多前端技术学