1. 程式人生 > >Nodejs基礎之method-override

Nodejs基礎之method-override

method-override(擴充套件 http請求)

  • 增加除瀏覽器自帶的get,post以外的偽請求,增加介面語義話
  • 自我實現展示原理
app.user(function (req,res){
    let req.method = req.query._menthod // 通過取query裡面的偽方法_menthod(客戶端傳過來的),然後重新設定req.method
})
  • 請求頭裡設定(如果伺服器端用X-HTTP-Method-Override)
    客戶端
var xhr = new XMLHttpRequest();
xhr.open('post', '/', true
); xhr.setRequestHeader('X-HTTP-Method-Override', 'delete'); xhr.send();

伺服器端

const method-overrider = require('method-overrider')

app.use(methodOverride('X-HTTP-Method-Override'))
...
app.use(/)
  • 常規設定
    客戶端
<form method="get" action='./'>
    <input type="hidden" name="_method" valud="delete"
/> <input type="submit"/> </form>

伺服器端

const method-overrider = require('method-overrider')

app.use(methodOverride('_method'), {methods: ['post', 'get']}) // 如果不設定,只能接受post