手工搭建koa2后端服务器——处理其他类型的请求参数Logic就可以了。本章我们来看看常用的请求参数获取处理逻辑。Postrequestbody我们在登录和注册接口中使用的requestbody参数是ctx.request.body中的对象,可以对form或Json进行处理,消息体可以由Post消息的数据携带在前端。这里就不多介绍了。获取查询参数在get请求中,我们经常使用?name=xxx&age=11来向后端传递参数。在koa2中,我们可以使用ctx.query或者ctx.querystring来获取查询参数。通常我们使用ctx.query就足够了,因为它会把我们的参数处理成对象,使用起来比较方便,我们也是用这个方法来处理参数校验的。constvalidate=async(ctx:Context,rules:Rules,):Promise<{data:T;错误:字符串}>=>{constvalidator=newSchema(rules);让数据:任何=空;switch(ctx.method){case'GET':data=ctx.query;休息;case'POST':data=ctx.request.body;休息;...}...};但是在一些特殊情况下,比如?xxxxxxx,参数不是键值对,而是一串字符串。这时候我们应该使用ctx.querystring来获取它的值。对于query参数,我们写个例子测试一下:Addquery指定用户信息接口回复。success(ctx,ctx.query,'获取用户信息成功');}}配置路由//src/controller/user/router.tsrouter.get('/getUserInfo',UserController.getUserInfo);在浏览器中我们请求:http://localhost:3300/getUserInfo?name=ZhangSan&age=12,返回信息如下:除了请求体参数和查询参数外,还有一类参数——路径参数.请求方式类似这样:/getUserInfo/123./getUserInfo/231,参数获取方式很简单:ctx.params,主要是路由定义方式不同,看下面例子://src/controller/user/view.tsasyncgetUserInfo(ctx:Context){控制台.log(ctx.params);response.success(ctx,ctx.params,'获取用户信息成功');}//src/controller/user/router.tsrouter.get('/getUserInfo/:name',UserController.getUserInfo);我们通过浏览器访问:http://localhost:3300/getUserInfo/tom,名字是tom