methodOverride

本文详细介绍了在Express中使用method-override中间件的方法,包括在没有配置和有配置的情况下如何通过form表单实现HTTP方法的覆盖,如GET和POST请求转换为自定义的搜索请求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

methodOverride
1.没有配置的情况下(不支持form表单)

 <button type="text" id='tijiao'>提交</button>
<script>
  $('#tijiao').on("click", function () {
    var xhr = new XMLHttpRequest();
    xhr.open('post', '/index?_method=search', true);
    //  xhr.setRequestHeader('X-HTTP-Method-Override', 'search');
    xhr.send();
  }) 
</script>
const methodOverride = require('method-override');
app.use(methodOverride('_method'));

app.search('/index', function (req, res) {
  console.log(req.method + 'efg');
});

2.有配置的情况下
(1)get

   <form action='/index' method='get'>
    <input type="hidden" name='_method' value='search'>
    <input type="submit">
  </form>
const methodOverride = require('method-override');
app.use(methodOverride('_method',{methods:null}));

app.search('/index', function (req, res) {
  console.log(req.method + 'efg');

});

(2)post

   <form action='/index?_method=search' method='post'>

    <input type="submit">
  </form>
const methodOverride = require('method-override');
app.use(methodOverride('_method',{methods:null}));

app.search('/index', function (req, res) {
  console.log(req.method + 'efg');

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值