koa框架(一)

2020-10-04  本文已影响0人  Kiki_Q

一、框架介绍

image.png

二、异步

1.回调(形参、实参)
2.promise
扩展:
let p = new promise(getData)//getData 含resolve方法
3.async方法//返回promise

注意:await必须在async方法中才可以使用因为await访问本身就会造成程序停止堵塞,所以必须在异步方法中才可以使用。(await阻塞功能)

三、路由

1.安装

npm install--save koa-router

2.使用

const Koa=require('koa');
const router=require('koa-router')();//注意:引入的方式
const app=new Koa(); 
router.get('/',function(ctx,next){ctx.body="Hello koa";})
router.get('/news,(ctx,next)=>{
    ctx.body="新闻page"
});
app.use(router.routes());//作用:启动路由app.use(router.allowedMethods());
//作用:这是官方文档的推荐用法,我们可以看到router.allowedMethods()用在了
路由匹配router.routes()之后,所以在当所有路由中间件最后调用.
此时根据ctx.status设置response响应头
app.listen(3000,()=>{console.log('startingatport3000');})

3.get传值

image.png
image.png
router.get('/newscontent,(ctx,next)=>{
    let url=ctx.url;
    //从request中获取GET请求          
    let request = ctx.request;
    let req_query = request.query;
    let req_querystring=request.querystring;
    //从上下文中直接获取let ctx_query=ctx.query;
    let ctx_querystring=ctx.querystring;
    ctx.body={
      url,req_query,req_querystring,ctx_query,ctx_querystring
    }
})

4.动态路由

image.png

四、koa中间件

1.介绍

中间件的功能包括:执行任何代码。修改请求和响应对象。终结请求-响应循环。调用堆栈中的下一个中间件
应用级中间件、路由级中间件、错误处理中间件、第三方中间件

2.执行顺序

image.png

五、koa ejs模板引擎

1.安装

1.安装koa-views
npm install --save koa-views/cnpm install --save koa-views
2.安装ejs
npm install ejs--save/cnpm install ejs --save
3.引入koa-views配置中间件
const views = require('koa-views');
app.use(views('存放目录',{map:{html:'ejs'}}));


image.png

4.Ejs引入模板:<% include header.ejs%>


image.png
5.公共数据存放
image.png
image.png

六、post提交数据&koa-bodyparser

1.原生Nodejs获取post提交数据

image.png

2.koa-bodyparser

image.png

七、koa-static静态资源中间件

1.使用

image.png

八、高性能模板引擎的引用

1.art-template

image.png

2.在Koa中使用art-template模板引擎

image.png

九、cookie

1.介绍

image.png

2.使用

1.Koa中设置Cookie的值:ctx.cookies.set(name,value,[options])
2.配置


image.png

3.Koa中获取Cookie的值:ctx.cookies.get('name');

3.Koa中设置中文Cookie

image.png

十.session

1.介绍

image.png

2.koa-session的使用

image.png
image.png
image.png

3.cookie和session区别

image.png

十一、mongodb

1.可视化工具compass

下载:https://www.mongodb.com/try/download/compass

上一篇下一篇

猜你喜欢

热点阅读