一、post请求参数需要使用koa-bodyparser
中间件
-
安装:
npm install --save koa-bodyparser
-
引入:
const BodyParser = require('koa-bodyparser');
二、使用:
app.js
const Koa = require('koa');
const Router = require('koa-router');
const Koaviews = require('koa-views');
const BodyParser = require('koa-bodyparser');
const Static = require('koa-static')
// 实例化
const app = new Koa();
const router = new Router();
// 配置静态资源中间件
app.use(Static(__dirname = "/static"));
// 配置ejs模版中间件
app.use(Koaviews('views', {
extension: 'ejs'
}));
// 配置BodyParser中间件
app.use(BodyParser());
// 路由,登陆界面跳转到index.ejs
router.get('/login', async ctx => {
await ctx.render('index',{});
})
router.post('/add', async ctx => {
let body = ctx.request.body;
ctx.body = body;
})
app.use(router.routes(),router.allowedMethods());
app.listen(3000, () => {
console.log('启动服务器成功,监听3000端口')
})
最主要的是这段代码
//配置路由
router.post('/add', async ctx => {
//获取post数据显示在/add上
let body = ctx.request.body;
ctx.body = body;
})
index.ejs
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="/add" method="POST">
<input type="text" name="username">
<br>
<input type="password" name="password">
<br>
<button type="submit">确定</button>
</form>
</body>
</html>
index.ejs界面
post提交数据
网友评论