"POST requests without a resource are not currently supported by the 'password' service


#1

Hello!!

i am trying to create a page in angularJS that will accept the confirmation code and confirm a user. I have been at this for hours, finished lots of wine trying to wrap my head around this and getting this error among others. I am trying a POST against ‘/api/v2/user/password’ with a data val of ‘{email: “deprecated”, old_password: “deprecated”, new_password: “deprecated”, code: “deprecated”}’ and trust me i have tried almost every other variation of this. it works PERFECT in the API docs and if i use CURL but not from the code below. I checked CORS and the sevices, all have correct permissions. I even upgraded to 2.3 in hopes i was reading the wrong docs. ppppppppppppplease help!!!

           this.confirm = function (options) {
            var deferred = $q.defer();
            console.log(options);
            var options2 = {resource:[options]};
            console.log(options2);
            $http.post('/api/v2/user/password', options).then(function (result) {
                console.log(result);
                deferred.resolve();
            }, deferred.reject);

            return deferred.promise;
        };
    }

#2

figure this one out guys!!! apperently the http.post method sends data encapsulated in a ‘Resource’ field and well the user password function doesnt play nice with that. if instead you use $.post there is no resource field

        this.confirm = function (options) {
            var deferred = $q.defer();
            console.log(options);

            $.post( "url.com/api/v2/user/password", options)
                .done(function( data ) {
                    console.log( "Data Loaded: " + data );
                });
            return deferred.promise;
        };