var koa = require('koa');
var router = require('koa-router')(); //路由
var app =new koa();
var index = require('./router/index')
var user = require('./router/user')
const logger = require('koa-logger'); //日志
var bodyparser=require('koa-bodyparser')(); //request参数挂载
var cors = require('koa2-cors'); //跨域支持
var session = require("koa-session") //session支持
var json = require("koa-json") //返回结果json化
//session 配置
const SESSION_Config = {
key:'koa:sessssss',
maxAge:86400000,
overwrite: true, /** (boolean) can overwrite or not (default true) */
httpOnly: true, /** (boolean) httpOnly or not (default true) */
signed: true, /** (boolean) signed or not (default true) */
}
app.keys = ['mykoa'];
app.use(cors({credentials:true}));
app.use(session(SESSION_Config, app));
app.use(async(ctx,next)=>{ //session 处理
if(!ctx.session.islogin){
ctx.session.islogin=false;
}
await next();
});
app.use(json());
app.use(logger());
app.use(bodyparser);
app.use(index.routes(),index.allowedMethods()); //公共api
app.use(async(ctx,next)=>{ //登陆检验
if(ctx.session.islogin){
await next();
}else{
ctx.body={state:-4,tip:"请登录"}
}
})
app.use(user.routes(),user.allowedMethods());
app.use( ()=>{
this.body = '请求无法处理';
});
app.listen(3001);
koa2写Api模板
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Xamarin XAML语言教程构建ControlTemplate控件模板 控件模板ControlTemplate...
- Thymeleaf 是新一代的Java模板引擎,它的语法对前端开发者友好可直接打开编辑,Spring Boot也建...
- 最近根据业务需要对内部的核心接口进行改造,需要改成业务点对点的接口;核心接口采用的Restful api接口风格,...