javascript - 为什么在 AngularJs 中 http.delete 时我不能传递参数?

标签 javascript angularjs http

我有函数调用 http.delete 并传递参数标志:

function softDeleteDatasource(datasourceId,flag) {
            var url = baseUrl + datasourceId;
            return $http.delete(url, {'currentFieldSetFlag':flag});
        }

然后我假设我可以用下面的代码得到 req.body。但是,我总是在 console.log 中得到 undefined。我在 http.post 中使用了完全相同的代码,并且在传递参数时它工作正常。

var bodyParser = require('body-parser');
var jsonParser = bodyParser.json();
router.delete('/:datasourceId', jsonParser, function(req, res) {
   console.log(req.body.currentFieldSetFlag);
}

我很困惑为什么同样的代码不能在http.delete中传递参数?有谁知道怎么通过吗?

最佳答案

HTTP 规范允许 DELETE 上的正文,但一些客户端不发送它们,一些代理/服务器将删除/忽略它们(如果存在)。这应该可以将其作为查询字符串参数传递:

return $http.delete(url, {params: {'currentFieldSetFlag':flag}});

关于javascript - 为什么在 AngularJs 中 http.delete 时我不能传递参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32615816/

相关文章:

javascript - 使用 Javascript 提取单选按钮值

javascript - 如何通过 Ajax 调用创建可点击链接的动态列表

java - PoolingHttpClientConnectionManager 与 PoolingNHttpClientConnectionManager

java - HttpRequestRetryHandler 处理哪些异常?

Java Spring 作为基于 Akka 的 REST HTTP 调用的客户端

javascript - 仅在单击 div 元素时显示 `slideToggle` 并在另一个按钮中关闭 `slideToggle`

javascript - AngularJs - $watch 仅在 Chrome 开发者工具打开时有效

javascript - Facebook 无法读取 AngularJS 开发的页面上的动态 og 标签

javascript - Angular 翻译与 ng-i18next

javascript - Typescript - React 中的多种类型情况如何