koa获取请求数据方式

koa获取Get请求参数

客户端常用的请求方式是Get和Post,koa中,获取客户端Get方式请求数据的方式为使用koa中request对象的query和querystring方法.区别是,query方法返回的是序列化好的对象,而querystring返回的是请求字符串.

koa中,由于上下文对象ctx有对request的API有直接引用的方式,所以也可以直接通过上下文对象的query和querystring方法获取Get请求数据.

1.使用koa中request对象中获取

ctx.request.query; //返回一个对象
ctx.request.querystring;  //返回一个查询字符串,如name=Nicholast&age=18

2.使用koa中上下文对象ctx的query和querystring方法获取

ctx.query; //返回一个对象
ctx.querystring; // 返回一个查询字符串

案例:

let userRouter = new Router();
userRouter.get("/",async (ctx) => {
    let url = ctx.url;

    // 从request对象中获取
    let request = ctx.request;
    let query_request = request.query;
    let querystring_request = request.querystring;

    //直接通过koa的上线获取get请求数据
    let query_ctx = ctx.query;
    let querystring_ctx = ctx.querystring;

    ctx.body = {
        txt: "用户中心",
        url,
        query_request,
        querystring_request,
        query_ctx,
        querystring_ctx
    };
});

koa获取Post请求数据

对于post方式请求的处理,koa2没有给封装获取参数的方法,需要通过解析上下文ctx中原生nodejs的请求对象req,将post的表单数据解析成querystring,再将querystring解析成json格式.

koa2没有给我提供获取post请求方式的参数,但是我们可以通过第三方中间件koa-bodyparser把koa2上下文的formData数据解析到ctx.request.body中.

# 安装koa-bodyparser中间件
npm install koa-bodyparser --save
const Koa = require("koa);
const bodyParser = require("koa-bodyparser);

// 引用
let app = new Koa();
app.use(bodyParser());
let userInfo = ctx.request.body; // 获取客户端通过post方式提交的参数

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值