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
本文介绍如何使用method-override扩展HTTP请求方法,实现如DELETE等非GET/POST请求。客户端可以通过设置伪请求方法来发送特定类型的数据请求,而服务器端则需要配置中间件解析这些伪请求。
2603

被折叠的 条评论
为什么被折叠?



