forms - expressjs 支持方法删除和放置,没有方法覆盖

标签 forms node.js express

如何让 expressjs 使用表单的 delete 和 put 方法?

<form method="DELETE" action="">

使用上述方法是在最新的稳定版 chrome 中发送 GET 请求。这应该是浏览器问题吗?

有没有更好的方法来覆盖它而无需特殊的输入字段来支持这些?

最佳答案

你只需要将表单设置为发布,然后创建一个隐藏字段,如

<input type="hidden" name="_method" value="delete"/>

并根据您使用的 express 版本设置配置。然后表单方法将被该隐藏字段的值覆盖。

最新版本将要求您安装 method-override包,然后像这样配置您的应用程序:

var methodOverride = require('method-override')
app.use(methodOverride('_method'));

旧版本可能会使用:

app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(express.methodOverride());

更古老的用法是:

app.use(express.bodyParser());
app.use(express.methodOverride());

关于forms - expressjs 支持方法删除和放置,没有方法覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9859287/

相关文章:

node.js - 设置 node.js 数据库 MongoDB/Redis 的最佳方式?

javascript - 查找已提交表单的所有提交按钮

Material 成分的 Angular 形状变化事件

javascript - Node npm 为什么所有模块都安装在根node_modules文件夹中?

session - Node 。我应该使用什么库在 MongoDB 中存储 session

Node.js - 在 Express 中从 Swig 迁移到 Nunjucks

jquery - 使用 jquery 计算选中的 html 复选框的数量

php - 如何在 mySQL 数据库中正确存储 textarea 中的换行符?

javascript - 发送 JSON 数组作为 Node.js 的响应

javascript - Node Express 中间件