Search code examples
angularjshttp-methodx-http-method-override

AngularJs http method override PUT-POST


IS there a way to do the http method override with angular's $resource service using the X-HTTP-Method-Override or a _method param in the request?


Solution

  • In your Resource factory you can specify the method for each type of request.

    angular.module('myServices', ['ngResource'])
    .factory('Customer', function($resource){
            return $resource('../api/index.php/customers/:id', {id:'@id'}, {
                update: {method:'PUT'}
            });
        })
    

    is the standard method, but you could use this too:

    angular.module('myServices', ['ngResource'])
    .factory('Customer', function($resource){
            return $resource('../api/index.php/customers/:id', {id:'@id'}, {
                update: {params: {'_method':'PUT', id: '@id'}}
            });
        })