koa-web-boilerplate
usage 使用
npm install
npm run dev
# see base web results
open localhost:7000
# overview of web open apis
open localhost:7000/api
功能
- 完备的后端模板渲染
- 路由模块
- 404、500错误处理
- service、controller分层
- 适配不同的开发环境 => dev,test,prod
- 不同环境的动态错误日志生成
目录介绍
|- bin 程序入口
|
|- config 配置文件
|
|- app 路由和视图
|- |- controller 程序逻辑分发层
|- |- service 网络服务层
|- |- views 视图层
|
|- middleware 中间件
|- |- body 程序逻辑分发层
|- |- log 日志系统
|- |- router 视图层
|- |- static 静态资源层
|- |- router 路由层
|
|- assets 静态资源 图片/font等
|
|- utils 工具库
|
|- test 单元测试
|
|- document API文档
|
|- logs 日志
技术模块及文档地址
业务分层
API 收集处理客户端请求数据,将处理好的数据发给service SERVICE 主业务层,根据业务逻辑分块,去不同的soa请求数据进行封装反馈给API。 SOA 每个SOA单独模块封装,以HTTP协议请求数据,不做数据封装
常用命令
三套环境
npm run dev || test || prod
单元测试
npm run mocha
生成API文档
npm run doc
查看API文档
npm run pwapi
部署
npm run deploy
dockerFile + Jenkins
技术提示
koa 代理列表
/**
* Response delegation.
*/
delegate(proto,
'response'------ level------
['attachment','redirect','remove'
'vary','set' ,'append','flushHeaders' ,'status'
'message' ,'body' ,'length' ,'type' ,'lastModified'
'etag', 'headerSent','writable' ];
/**
* Request delegation.
*/
delegate(proto,
'request' ------ level------
['acceptsLanguages' , 'acceptsEncodings' ,'acceptsCharsets',
'accepts' , 'get' , 'is',
'querystring' ,'idempotent' ,'socket' ,
'search' , 'method' ,'query' , 'path' ,
'url' , 'origin' ,'href' , 'subdomains' ,
'protocol' ,'host','hostname' ,'header' ,
'headers','secure' ,'stale' ,'fresh' ,'ips' 'ip']