传递参数的方式

目前有四种传递参数的方式:

  1. 请求地址段
  2. ?xx=xx这种query参数
  3. body中携带参数
  4. 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了,我看了下他的,很多都是定死的设计,学习校验可以看看,但是如果是项目使用,就感觉不是太灵活。

joi官网

使用这款校验器,具体代码后面再更新。

分类: Node 标签: nodekoa参数参数校验joi

评论

暂无评论数据

暂无评论数据

目录