且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

koa框架学习记录(2)

更新时间:2022-01-14 20:59:56

Get请求的接收
在koa2中GET请求通过request接收,但是接受的方法有两种:query和querystring。
·        query:返回的是格式化好的参数对象。
·        querystring:返回的是请求字符串。

const Koa = require('koa');
const app = new Koa();
app.use(async(ctx)=>{
    let url =ctx.url;
    let request =ctx.request;
    let req_query = request.query;
    let req_querystring = request.querystring;
 
    ctx.body={
        url,
        req_query,
        req_querystring
    }
});
 
app.listen(3000,()=>{
    console.log('[demo] server is starting at port 3000');
});
可以清楚看到query是一个对象,而querystring就是一个普通的字符串
直接从ctx中获取Get请求
除了在ctx.request中获取Get请求外,还可以直接在ctx中得到GET请求。ctx中也分为query和querystring。
 
const Koa = require('koa');
const app = new Koa();
app.use(async(ctx)=>{
    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
    }
 
});
 
app.listen(3000,()=>{
    console.log('[demo] server is starting at port 3000');
});
 
                           
 
总结:获得GET请求的方式有两种,一种是从request中获得,一种是一直从上下文中获得。获得的格式也有两种:query(obj)和querystring(string)。