koa2-router中間件來請求數據獲取

原理

雖然不使用中間件也能獲取請求數據html

對於POST請求的處理,koa-bodyparser中間件能夠把koa2上下文的formData數據解析到ctx.request.body中。node

安裝koa2版本的koa-bodyparser@3中間件git

npm install --save koa-bodyparser@3

 

例子

demo源碼

const Koa = require('koa') const app = new Koa() const bodyParser = require('koa-bodyparser') // 使用ctx.body解析中間件
app.use(bodyParser()) app.use( async ( ctx ) => { if ( ctx.url === '/' && ctx.method === 'GET' ) { // 當GET請求時候返回表單頁面
    let html = ` <h1>koa2 request post demo</h1>
      <form method="POST" action="/">
        <p>userName</p>
        <input name="userName" /><br/>
        <p>nickName</p>
        <input name="nickName" /><br/>
        <p>email</p>
        <input name="email" /><br/>
        <button type="submit">submit</button>
      </form>
 ` ctx.body = html } else if ( ctx.url === '/' && ctx.method === 'POST' ) { // 當POST請求的時候,中間件koa-bodyparser解析POST表單裏的數據,並顯示出來
    let postData = ctx.request.body ctx.body = postData } else { // 其餘請求顯示404
    ctx.body = '<h1>404!!! o(╯□╰)o</h1>' } }) app.listen(3000, () => { console.log('[demo] request post is starting at port 3000') })

啓動例子

node post-middleware.js

訪問頁面github

 

 提交表單發起POST請求,顯示結果:npm

 

 參考連接:https://chenshenhai.github.io/koa2-note/note/request/post-use-middleware.htmlapp

相關文章
相關標籤/搜索