最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How to send DELETE request to server with Json data using AngularJS? - Stack Overflow

programmeradmin1浏览0评论

I have to send a http DELETE request to a server. The type has to be JSON, and the object looks like this:

{ "id": "value"}

My first approach was the following code, but so far it doesn't work:

$http.delete('http://blabla/server/house', {"id": "value"}).success(function(data) {
            console.log(data);
            //Redirect to index.html
            $location.path('/'); 
        });

What would a working solution look like?

I have to send a http DELETE request to a server. The type has to be JSON, and the object looks like this:

{ "id": "value"}

My first approach was the following code, but so far it doesn't work:

$http.delete('http://blabla/server/house', {"id": "value"}).success(function(data) {
            console.log(data);
            //Redirect to index.html
            $location.path('/'); 
        });

What would a working solution look like?

Share Improve this question edited Nov 28, 2016 at 16:50 Rishabh 3,8624 gold badges48 silver badges75 bronze badges asked Apr 15, 2015 at 14:47 AlessandroAlessandro 9253 gold badges17 silver badges33 bronze badges 1
  • The syntax is: $http.delete(url, [config]), not $http.delete(url, [data]) – Kevin B Commented Apr 15, 2015 at 15:07
Add a ment  | 

3 Answers 3

Reset to default 4

As @KevinB pointed out, config is the second parameter.

var obj = { "id": "value"};
var config = { data: JSON.stringify(obj) };
$http.delete('http://blabla/server/house', config).success(function(data) {
        console.log(data);
        //Redirect to index.html
        $location.path('/'); 
    });
$http({
            method: 'DELETE',
            url: 'http://blabla/server/house',
            data: JSON.stringify({
                'id': 'value'
            })
        }).success(function (results) {
            console.log(results);
            //Redirect to index.html
            $location.path('/'); 
        });

I guess you can just pass the param as part of the query params. Something like this:

var config = {
   params: {
     yourServerSideParamName: JSON.stringify({'id': 'value' })
   }
};

$http.delete('blabla/server/house', config).success(function(data){
   $location.path('/'); 
});

Hope it helps!

发布评论

评论列表(0)

  1. 暂无评论