express - 如何启用 DELETE 请求?

标签 express cors

我不能允许 DELETE由于 CORS,来自我的 API 服务器的请求。

服务器.js

// enable CORS
app.use(function (req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Methods", "GET", "PUT", "POST", "DELETE", "OPTIONS");
    res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization");
    next();
});

我收到一个控制台错误说:
XMLHttpRequest cannot load http://localhost:8080/api/users/57f5036645c04700128d4ee0. Method DELETE is not allowed by Access-Control-Allow-Methods in preflight response
如何启用 DELETE请求,就像 GET , PUT , 和 POST要求?

最佳答案

我在没有添加新包的情况下解决了它,只是添加了这一行

res.header("Access-Control-Allow-Methods", "GET, PUT, POST, DELETE");

请注意,我在一个字符串中用逗号分隔了允许的方法。
完整的函数如下所示:
app.use(function (req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Methods", "GET, PUT, POST, DELETE");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization");
  next();
});

关于express - 如何启用 DELETE 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39876110/

相关文章:

reactjs - 尝试使用来自另一个 URL 的图像时使用 create-react-app 的 CORS 问题

node.js - nodejs multer 正在获取 req.file 但未将其上传到目的地

javascript - 在 Nodejs 中,如何停止 FOR 循环直到 MongoDB 调用返回

ajax - 在结束 AJAX 请求之前等待 node.js 回调完成

ruby-on-rails - 为什么我的 HTTP Origin header 与 request.base_url 不匹配以及如何修复?

ruby-on-rails - Rails 5.1 CORS - 如何为不同环境设置不同来源

javascript - 本地主机 : Image from origin 'null' has been blocked from loading by Cross-Origin Resource Sharing policy

node.js - 添加变量到连接 Assets

session - 如何在 ExpressJS 中结束 session

javascript - THREE.js:跨源资源共享策略拒绝跨源图像加载