koa-bodyparser

1,048 阅读1分钟

如何接收post请求带过来的数据,有两种方式

  • 利用node.js原生的querystring.parse()方式拿到前端传过来的数据。

    • const http = require("http");
      http.createServer((req, res) => {
          if (req.method === "POST"){
              let params = ""
              req.on("data", (chunk) => {
                  params += chunk;
              });
              
              req.on("end", () => {
                 let data = querystring.parse(params);
            })
          }
      })
      
  • 利用第三方中间件koa-bodyparser

koa-bodyparser
  1. 安装

    npm install koa-bodyparser --save
    
  2. 使用

    const Koa = require("koa");
    const app = new Koa();
    
    const router = require("koa-router")();
    const bodyParser = require("koa-bodyparser");
    
    var views = require('koa-views')
    app.use(bodyParser())
    
    
    //ejs 第三方模板渲染引擎
    app.use(views('views',{
        extension:'ejs'
    }))
    
    router.get('/',async (ctx)=>{
        await ctx.render('index'); //index 就是文件的名称
    })
    
    router.post("/new", async (ctx) => {
        console.log(ctx)
        ctx.body = ctx.request.body
    })
    
    
    app.listen(3000)
    app.use(router.routes());
    app.use(router.allowedMethods());