koa教程2 参数 + 参数校验
传递参数的方式
目前有四种传递参数的方式:
- 请求地址段
- ?xx=xx这种query参数
- body中携带参数
- header头信息携带参数
那么koa是如何获取这四种参数呢?
koa获取参数
由于body参数获取比较复杂,我们需要安装一个中间件进行处理。
yarn add koa-bodyparser --dev
然后在app.js中引入并激活
const Koa = require("koa");
const InitManager = require("./core/init");
const bodyParser = require("koa-bodyparser");
const app = new Koa();
//body中间件解析
app.use(bodyParser());
//自动注册路由
InitManager.initCore(app);
app.listen(8080);
路由中读取参数:
const Router = require("koa-router");
const router = new Router();
router.post("/test1/:id", (ctx, next) => {
const path = ctx.params;
const query = ctx.request.query;
const body = ctx.request.body;
const header = ctx.request.header;
ctx.body = "接受了";
});
module.exports = router;
路径上的参数通过:
分号处理,和vue的router处理相同。
参数校验
目前个人用的是一款名为:joi
的校验器,这里就不用视频教程说的lin-validator
了,我看了下他的,很多都是定死的设计,学习校验可以看看,但是如果是项目使用,就感觉不是太灵活。
使用这款校验器,具体代码后面再更新。
版权申明
本文系作者 @木灵鱼儿 原创发布在木灵鱼儿站点。未经许可,禁止转载。
暂无评论数据