Koa2 route autowired
route autowired for koa2 implementation .
特性
- 参考springMVC的注解,基于koa2的路由框架
- 开箱即用
- 简单优雅
新版特性
- 优化
@Autowired
注入方式 - 优化接口返回方式
安装
npm install koa2_autowired_route --save
示例
目录结构
.../
src/
filters/
demo-filter.ts
routes/
route-demo.ts
main.ts
override.js
route.json
//main.ts;app.listen3000;
//route.json
//route-demo.ts;
;
运行
npm run ts-node ./src/main.ts
打开http://localhost:3000以在浏览器中查看它 .
装饰器用法
@Route
释义: 接口注解
适用: class, method
可选参数:
path
释义: url路径
类型: string
适用: class, method
type
释义: 请求类型
类型: enum TYPE
适用: method
可选参数:
// 枚举源码
即:
- TYPE.GET
- TYPE.POST
- TYPE.DELETE
- TYPE.PUT
Interceptors
释义: 拦截器集合
类型: Interceptor[]
适用: class, method
元素类型:Interceptor 接口的实现类(可以使用配置多个拦截器)
示例:
;
- return true: 验证通过, 接下来访问接口
- return false: 验证失败, 如果ctx没有抛出异常, 服务器默认会报401
@Autowired
释义: 依赖注入注解
适用: property
必选参数:
new Object
示例:
//route-demo.ts;
自定义Koa对象
override.js
你可以在override.js种自定义koa对象,比如自定义请求头等。例:
//override.jsmodule { app;}
注:如果override.js
与其他框架的配置文件重叠,可以通过route.json
来自定义override.js
文件名。例:
//route.json
//test.jsmodule { app;}
缺陷
- 发现的已修复,待发现。。。
最后
- 期待你的新需求,需求请发送到 oe52920@gmail.com, 收到后我就会更新啦
- 你认为这个框架哪里不好用也可以提需求啦,发送到上面的邮箱就好啦
- 赏个星啦
- 最后,谢谢各位coder