從零一起學koa2(5)---koa-bodyparser中介軟體
阿新 • • 發佈:2019-02-04
上一篇中寫了如何直接編寫程式碼接收並解析POST請求,比較麻煩,這種比較麻煩的事情一定有中介軟體讓我們使用,koa-bodyparser就是一個。對於POST請求的處理,koa-bodyparser中介軟體可以把koa2上下文的formData資料解析到ctx.request.body中。
安裝
npm install --save koa-bodyparser
例子
引入並使用koa-bodyparser中介軟體
const bodyParser = require('koa-bodyparser');
app.use(bodyParser());
然後就可以直接在ctx.request.body
新建app.js檔案,稍微修改一下之前的程式碼即可。
const Koa = require('koa'); const app = new Koa(); const bodyParser = require('koa-bodyparser'); app.use(bodyParser()); app.use(async(ctx)=>{ if(ctx.url==='/' && ctx.method==='GET'){ //顯示錶單頁面 let html=` <h1>JSPang Koa2 request POST</h1> <form method="POST" action="/"> <p>userName</p> <input name="userName" /><br/> <p>age</p> <input name="age" /><br/> <p>website</p> <input name="webSite" /><br/> <button type="submit">submit</button> </form> `; ctx.body=html; }else if(ctx.url==='/' && ctx.method==='POST'){ let postData= ctx.request.body; ctx.body=postData; }else{ ctx.body='<h1>404!</h1>'; } }); app.listen(3000,()=>{ console.log('server is starting at port 3000'); });
輸入並提交表單,就可以得到JSON格式的資料了。